VS2017 构建错误 - 命令 nuget restore 已退出,代码为 9009

VS2017 Build error - The command nuget restore exited with code 9009

当我构建我的项目时,我看到以下错误。

The command "nuget restore ProjectName.csproj - PackagesDirectory ....\packages" exited with 9009.

当我在我的 .csproj 上单击编辑时,我看到下面的代码行

<Target Name="BeforeBuild">
      <Exec WorkingDirectory ="$(ProjDir)" command = "nuget restore $(ProjectName) -PackagesDirectory
 ..\..\packages>
</Exec>
</Target>

首先,你应该确保你已经下载了 the latest nuget.exe v5.7.0 并将它的完整路径配置到系统环境 PATH

1) 下载并复制到文件夹中

2)然后打开系统环境变量PATH,将本地nuget.exe的路径配置进去。

然后,点击全部确定选项保存。

之后,可以打开CMD输入nuget查看是否可以调用nuget.exe .

其次,关闭所有vs实例或msbuild window,打开你项目的xxx.csproj文件,

而不是,使用这个:

<Target Name="BeforeBuild">
    <Exec WorkingDirectory="$(ProjectDir)" command = "nuget restore $(MSBuildProjectFile) -PackagesDirectory ..\packages ">
    </Exec>
</Target>

重新启动您的项目,或关闭以重新唤醒 MSBuild 以构建您的项目。

我这边效果很好。

我已经从https://www.nuget.org/downloads下载了nuget.exe并复制到C盘Windows文件夹,成功了。