msbuild - 缺少项目类型“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 包都能安装。
解决方案
显然,您正在使用 VS 2015 工具 (MSBuild 14) 和/或较旧的 nuget.exe (< 4.0.0) 使用PackageReference
引用 NuGet 包的方式处理项目。使用更新的工具(Nuget 4+、VS / Build Tools 2017+)来解决这个问题。
推荐阅读
- java - 为什么我的测试在作为 maven 独立测试执行时不运行?
- php - 如何在laravel中进行数组合并
- java - 杰克逊忽略了特定的财产,但能够检查它是否可用
- spring - 使用 Gradle 和 Mapstruct 运行/调试 JUnit 5 测试
- php - PHP 函数 SOAP 1.2
- r - 如何相对于 R 中的所有其余列对某些列进行测试?
- javascript - JavaScript 计算数组 [a,b] + [c,d]
- oxyplot - Oxyplot - LineAnnotion 文本水平显示
- spring - 在某些 API 调用上禁用 Feign 日志记录
- swift - 使用 Codable 保存到 CoreData 字符串数组