我在我的TFS 2017构建过程中使用了NuGet Packager任务来为类库创建NuGet包。我收到错误消息:
[错误]“ System.Runtime”已经具有为“ Microsoft.NETCore.Platforms”定义的依赖项。 [错误] System.Exception:工具NuGet.exe返回了意外的退出代码1
我设置了以下任务参数:
Path to csproj or nuspec file(s) to pack: .\xxx\xxx.csproj
Package Folder: ./xxx/bin/Release
Include referenced projects: Checked
Automatic package versioning: Use the build number
Configuration to Package: $(BuildConfiguration)
我正在使用相同的TFS任务为另一个类库创建另一个NuGet包,并且一切正常。
我尝试了以下stackoverflow问题提供的解决方案,但没有任何效果。
NuGet: 'X' already has a dependency defined for 'Y'
关于如何解决此错误的任何想法?
答案 0 :(得分:0)
如'System.Globalization' already has a dependency defined for 'Microsoft.NETCore.Platforms'所述,此错误已在新的多功能 NuGet命令任务中修复,该任务取代了旧的 NuGet Packager 任务并使用NuGet默认为4.0。
使用 NuGet命令 TFS任务代替 NuGet Packager TFS任务修复了该错误。 NuGet命令任务使用的参数是:
Command: pack
Arguments: .\xxx\xxx.csproj
-OutputDirectory ./xxx/bin/Release
-Version $(Build.BuildNumber)
-IncludeReferencedProjects
-Properties Configuration=$(BuildConfiguration)