繁体   English   中英

Jenkins CI正在跳过nuget.exe恢复my.sln上的软件包

[英]Jenkins CI is skipping packages on nuget.exe restore my.sln

在踢完Jenkins(v2.8)版本后,将清除工作区,拉出Git源并使用“执行Windows批处理命令”构建任务发出“nuget.exe restore my.sln”(v3.4.4)。 检查Jenkins控制台输出表示恢复操作:

NuGet Config files used:
C:\Windows\system32\config\systemprofile\AppData\Roaming\NuGet\NuGet.Config

Feeds used:
C:\Windows\system32\config\systemprofile\AppData\Local\NuGet\Cache
C:\Windows\system32\config\systemprofile\.nuget\packages\
https://api.nuget.org/v3/index.json

Installed:
3 package(s) to packages.config projects

到目前为止所有看起来都很好,但经过调查,一些软件包被跳过,因为我的package.config实际上包含5个软件包

<?xml version="1.0" encoding="utf-8"?>
<packages>
   <package id="Dapper" version="1.42" targetFramework="net452" />
   <package id="FluentMigrator" version="1.6.1" targetFramework="net452" />
   <package id="FluentMigrator.Runner" version="1.6.1" targetFramework="net452" />
    <package id="FluentValidation" version="6.1.0.0" targetFramework="net452" />
    <package id="Newtonsoft.Json" version="8.0.2" targetFramework="net452" />
</packages>  

Dapper和FluentValidation包都被跳过了。 我的第一个想法,我可能在我的包配置中犯了一个愚蠢的错误,或者我不小心引用了错误的package.config ...但是,在构建服务器上执行完全相同的nuget restore命令会显示:

NuGet Config files used:
C:\Users\admin\AppData\Roaming\NuGet\NuGet.Config

Feeds used:
C:\Users\admin\AppData\Local\NuGet\Cache
C:\Users\admin\.nuget\packages\
https://api.nuget.org/v3/index.json

Installed:
5 package(s) to packages.config projects 

我不知道为什么Jenkins构建任务正在跳过,或者只是部分下载所需的包。 有没有类似经历的人?

更新:

创建了一个全新的测试项目并包含了一个缺少的软件包,修改了jenkins项目以从git中取出这个项目。 点击nuget恢复mytest.sln它就可以了。 仍然不明白为什么其他sln不起作用,但至少确定这种行为必须与解决方案或其中一个项目有关。 不花更多的时间在这上面。 将重新创建项目。

哦,我,我觉得自己像个菜鸟。 有些软件包是无意中使用git的。 因此,当从git中提取源时,它还创建了一个包含两个包的包文件夹。 这导致nuget恢复跳过它们已经存在的那些。 如果nuget restore的输出表明是以某种形式跳过包下载,那将非常有用。 可以节省我几个小时!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM