【发布时间】:2018-05-29 20:26:36
【问题描述】:
请记住,我对 TeamCity 平台还很陌生。 :-)
我们正在使用 TeamCity 构建我们的项目,并且遇到了一个问题,即有多个项目需要 nuget 来恢复丢失的包。
导致此问题的第一个线索是错误“此项目引用了此计算机上缺少的 NuGet 包。启用 NuGet 包还原以下载它们。”
我添加了一个构建步骤并将其作为序列中的第一步,现在发生的是 TeamCity 检查 3 个位置以解决包。前 2 个位置是构建服务器的本地位置。
A. NuGet\缓存 B. 包裹 C. 尝试连接https://api.nuget.org/v3/index.json
它尝试恢复的包不存在于本地构建服务器上,因此它尝试引用 api.nuget.org 存储库,该存储库在超时并出现错误后不断失败:
无法加载源 https://api.nuget.org/v3/index.json 的服务索引。 发送请求时出错。 无法连接到远程服务器 连接尝试失败,因为连接方一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应 10.80.127.254:80
我已经研究过这个错误,并看到其他人报告了相同的问题,但未能找到任何明确的解决方案。
由于 VS2017 在适用时从我的本地环境中获取缺少的程序集包,因此项目解决方案中包含的包目录。
因为当通过 TFS 执行签入时,文件夹和文件会被复制(引用)到构建服务器上。
难道不应该有某种方法来指导 TeamCity 包含也签入的包目录吗?
否则,当构建服务器上不存在包目录并且所有搜索位置都失败时,当 TeamCity 想要执行包还原时,还有哪些其他选择可以规避?
** 我不认为这是一个重复的问题,但如果是这样,请向我推荐相应的链接 **
谢谢
【问题讨论】:
-
您的机器上是否配置了代理?还是环境变量中配置的“http_proxy”变量?可以直接访问源api.nuget.org/v3/index.json吗?我的意思是得到 json 响应,而不是错误消息。