我已将“Package Restore”启用到我们的构建中,我们每晚构建一次以确保所有内容都能正确构建。
我们在构建计算机上遇到包错误,但在本地计算机上没有。
错误是:
nuget.targets (43): Unable to find version (2.5.1) Castle.Core
我认为版本包是无关紧要的,但我已添加了上下文。
有什么想法吗?
包裹配置:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Castle.Core" version="2.5.2" />
<package id="FluentNHibernate" version="1.2.0.712" />
<package id="Iesi.Collections" version="3.1.0.4000" />
<package id="NHibernate" version="3.1.0.4000" />
<package id="NHibernate.Castle" version="3.1.0.4000" />
</packages>
答案 0 :(得分:1)
将构建日志设置为诊断级别的输出。这应该在构建的nuget部分显示错误。
开关是:
/verbosity:diag
您没有说明您使用什么来启动CI,因此我假设您知道如何修改调用。
您也可以尝试从命令行通过msbuild手动运行nuget.targets文件。从项目文件夹中尝试:
msbuild myproj.csproj /target:RestorePackages /v:diag
或
msbuild myproj.csproj /target:BuildPackages /v:diag
答案 1 :(得分:0)
确保在ci机器上设置并且未禁用恢复所需的所有包源。
列出/添加它们:
nuget.exe sources <List|Add|Remove|Enable|Disable|Update> -Name [name] -Source [source]
这也可能是一个代理问题,但由于最近在nuget.exe中添加了支持,因此它不太可能,并且它会要求提供凭据。