When running the NuGet pack command I get the error: 'AutoMapper' already has a dependency defined for 'NETStandard.Library'
When running the NuGet pack command I get the error: 'AutoMapper' already has a dependency defined for 'NETStandard.Library'
我在打包自己的 nuget 包时遇到问题,其中包括 AutoMapper 5.0.2。这只会在 Visual Studio Team Services (VSTeam) 构建服务器中产生错误。
我的项目正在使用 .NET 4.6.1
关于如何解决的任何想法?
这里是错误:
2016-07-08T23:46:44.5801667Z C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents.102.0\agent\worker\tools\NuGet.exe pack "C:\a\s\Project.csproj" -OutputDirectory "C:\a\s\Project\bin\release" -Properties Configuration=release -IncludeReferencedProjects
2016-07-08T23:46:45.0458195Z MSBuild auto-detection: using msbuild version '14.0' from 'C:\Program Files (x86)\MSBuild.0\bin'.
2016-07-08T23:46:45.0468395Z Attempting to build package from 'Project.csproj'.
2016-07-08T23:46:45.1942694Z Packing files from 'C:\a\s\Project\bin\Release'.
2016-07-08T23:46:45.3942642Z ##[error]**'AutoMapper' already has a dependency defined for 'NETStandard.Library'.**
2016-07-08T23:46:45.4142626Z ##[error]System.Exception: Unexpected exit code 1 returned from tool NuGet.exe
2016-07-08T23:46:45.4152639Z ##[error] at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.InvokeToolCmdlet.ProcessRecord()
2016-07-08T23:46:45.4152639Z ##[error] at System.Management.Automation.CommandProcessor.ProcessRecord()
我还在 GitHub 上开了一个问题:https://github.com/AutoMapper/AutoMapper/issues/1499
我能够 fix/workaround 通过放入 PowerShell 脚本下载最新的 NuGet 来解决这个问题。然后我将所有 NuGet 任务指向这个新 nuget.exe。优点:构建再次运行,缺点:每个构建都会再次下载 NuGet,从而在 NuGet.org 上造成不必要的负载。
这是我的 PowerShell:
$sourceNugetExe = "https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
$targetNugetExe = "$(build.sourcesdirectory)/nuget.exe"
Invoke-WebRequest $sourceNugetExe -OutFile $targetNugetExe
Set-Alias nuget $targetNugetExe -Scope Global -Verbose
nuget
您需要为您的 visual studio 版本安装新的 Nuget 版本。
从这里获取
Nuget gallery
如果有人使用 Team City,您还需要使用/安装更新版本的 Nuget。
我在打包自己的 nuget 包时遇到问题,其中包括 AutoMapper 5.0.2。这只会在 Visual Studio Team Services (VSTeam) 构建服务器中产生错误。
我的项目正在使用 .NET 4.6.1
关于如何解决的任何想法?
这里是错误:
2016-07-08T23:46:44.5801667Z C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents.102.0\agent\worker\tools\NuGet.exe pack "C:\a\s\Project.csproj" -OutputDirectory "C:\a\s\Project\bin\release" -Properties Configuration=release -IncludeReferencedProjects
2016-07-08T23:46:45.0458195Z MSBuild auto-detection: using msbuild version '14.0' from 'C:\Program Files (x86)\MSBuild.0\bin'.
2016-07-08T23:46:45.0468395Z Attempting to build package from 'Project.csproj'.
2016-07-08T23:46:45.1942694Z Packing files from 'C:\a\s\Project\bin\Release'.
2016-07-08T23:46:45.3942642Z ##[error]**'AutoMapper' already has a dependency defined for 'NETStandard.Library'.**
2016-07-08T23:46:45.4142626Z ##[error]System.Exception: Unexpected exit code 1 returned from tool NuGet.exe
2016-07-08T23:46:45.4152639Z ##[error] at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.InvokeToolCmdlet.ProcessRecord()
2016-07-08T23:46:45.4152639Z ##[error] at System.Management.Automation.CommandProcessor.ProcessRecord()
我还在 GitHub 上开了一个问题:https://github.com/AutoMapper/AutoMapper/issues/1499
我能够 fix/workaround 通过放入 PowerShell 脚本下载最新的 NuGet 来解决这个问题。然后我将所有 NuGet 任务指向这个新 nuget.exe。优点:构建再次运行,缺点:每个构建都会再次下载 NuGet,从而在 NuGet.org 上造成不必要的负载。
这是我的 PowerShell:
$sourceNugetExe = "https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
$targetNugetExe = "$(build.sourcesdirectory)/nuget.exe"
Invoke-WebRequest $sourceNugetExe -OutFile $targetNugetExe
Set-Alias nuget $targetNugetExe -Scope Global -Verbose
nuget
您需要为您的 visual studio 版本安装新的 Nuget 版本。
从这里获取 Nuget gallery
如果有人使用 Team City,您还需要使用/安装更新版本的 Nuget。