我尝试使用 .NET Framework 4.6.1 从命令提示符下使用 MSBuild Command 构建 .NET 标准库项目。我成功地从命令提示符构建了项目。
我尝试使用相同的 MSBuild 命令从 Teamcity 命令行构建步骤构建项目,但最终出现以下错误:
C:\Program Files (x86)\MSBuild\Microsoft\NuGet\Microsoft.NuGet.targets(140,5): error : The package Microsoft.NETCore.Portable.Compatibility
with version 1.0.1 could not be found in C:\Windows\system32\config\systemprofile\.nuget\packages\. Run a NuGet package restore to download the package.
我尝试恢复
nuget.exe restore mysolution.sln
但注意到有效。
请帮助我从 Teamcity 命令行步骤编译解决方案。从命令提示符编译而不是从 teamcity 命令行编译是很奇怪的。
使用 LocalSystem 帐户还原包时,NuGet 中似乎存在一个已知问题,其中无法在
C:\Windows\system32\config\systemprofile\.nuget\packages
文件夹下访问包,即使帐户权限应该允许(请参阅此 GH 问题)。当前建议的解决方法是使用 NUGET_PACKAGES
环境变量为包指定另一个位置(例如 C:\NuGet\packages
)。
使用与本地系统不同的帐户在构建计算机上运行 Azure Pipeline Agent Windows 服务。