问题描述
我的 TeamCity NuGet 源中有一个包,由 TeamCity 构建,但依赖的 TC 项目在包还原期间看不到它.
I have a package on my TeamCity NuGet feed, built by TeamCity, but a dependent TC project cannot see it during package restore.
[14:05:02][Exec] E:TeamCity-BuildAgentwork62023563850993a7Web.nuget uget.targets(88, 9):找不到包MarkLogicManager40"的版本1.0.17.0"'.
[14:05:02][Exec] E:TeamCity-BuildAgentwork62023563850993a7Web.nuget uget.targets(88, 9): Unable to find version '1.0.17.0' of package 'MarkLogicManager40'.
[14:05:02][Exec] E:TeamCity-BuildAgentwork62023563850993a7Web.nuget uget.targets(88, 9):错误 MSB3073:命令"E:TeamCity-BuildAgentwork62023563850993a7Web.nuget uget.exe"安装E:TeamCity-BuildAgentwork62023563850993a7ProductMvcpackages.config"-来源"-RequireConsent -solutionDir E:TeamCity-BuildAgentwork62023563850993a7Web"以代码 1 退出.
[14:05:02][Exec] E:TeamCity-BuildAgentwork62023563850993a7Web.nuget uget.targets(88, 9): error MSB3073: The command ""E:TeamCity-BuildAgentwork62023563850993a7Web.nuget uget.exe" install "E:TeamCity-BuildAgentwork62023563850993a7ProductMvcpackages.config" -source "" -RequireConsent -solutionDir "E:TeamCity-BuildAgentwork62023563850993a7Web "" exited with code 1.
请注意,NuGet 命令行中的 source 参数为空.会不会是这个原因?
Note that the source parameter in the NuGet command line is empty. Could this be the cause?
推荐答案
截至目前,NuGet.targets 有以下方式来指定自定义提要:
As of today, NuGet.targets has the following way to specify custom feed(s):
<ItemGroup Condition=" '$(PackageSources)' == '' "> <!-- Package sources used to restore packages. By default, registered sources under %APPDATA%NuGetNuGet.Config will be used --> <!-- The official NuGet package source (http://www.51sjk.com/Upload/Articles/1/0/343/343241_20230213091938704.jpg) will be excluded if package sources are specified and it does not appear in the list --> <PackageSource Include="http://www.51sjk.com/Upload/Articles/1/0/343/343241_20230213091938704.jpg" /> <PackageSource Include="\MyShare" /> <PackageSource Include="http://MyServer/" /> </ItemGroup>
另一种选择是将 NuGet.config 放在解决方案文件旁边:
Another option is to put NuGet.config next to the solution file:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="nuget.org" value="http://www.51sjk.com/Upload/Articles/1/0/343/343241_20230213091941489.jpg" /> <add key="MyShare" value="\MyShare" /> <add key="MyServer" value="http://MyServer" /> </packageSources> <activePackageSource> <add key="All" value="(Aggregate source)" /> </activePackageSource> </configuration>