首页 > 解决方案 > 缺少项目类型“PackageReference”所需的属性“OutputPath”

问题描述

我正在尝试通过 Jenkins Pipeline 运行以下命令

bat 'nuget restore mySolution.sln -MSBuildPath "C:\\Program Files (x86)\\MSBuild\\14.0\\Bin"'

但我说错了

无效的恢复输入。缺少项目类型“PackageReference”所需的属性“OutputPath”。输入文件:C:\Program Files (x86)\Jenkins\workspace\My Project Build Pipeline\myProject\myProject.csproj。

我试过

bat label: '', script: '"C:\\Package tools\\nuget.exe" restore "C:\\Program Files (x86)\\Jenkins\\workspace\\My Project Build Pipeline\\myProject\\myProject.csproj" -MSBuildPath "C:\\Program Files (x86)\\MSBuild\\14.0\\Bin"'  // Restore packages.

当我们在 Visual Studio 中“恢复 NuGet 包”时,我希望所有的 NuGet 包都能安装。

标签: msbuildjenkins-pipeline

解决方案


显然,您正在使用 VS 2015 工具 (MSBuild 14) 和/或较旧的 nuget.exe (< 4.0.0) 使用PackageReference引用 NuGet 包的方式处理项目。使用更新的工具(Nuget 4+、VS / Build Tools 2017+)来解决这个问题。


推荐阅读