繁体   English   中英

试图击中nuget.org的生成机上的NuGet.exe包

[英]NuGet.exe pack on build machine trying to hit nuget.org

尝试在具有.nuspec文件的.csproj上运行NuGet.exe包。

本地一切正常。 我已经在源代码旁边签入了NuGet.exe。 这个特定的NuGet程序包与.nuspec文件中列出的任何其他NuGet程序包没有任何依赖关系(即使存在,也可以在源代码控制中使用它们)。 我期望NuGet.exe仅在构建计算机上运行,​​而不会尝试与Web上的任何内容进行交互。

在源树的根文件夹中签入了一个NuGet.config文件,但是在构建计算机上运行的命令行命令似乎忽略了它。 版本似乎是2.6.40619.9041(在我的本地计算机上,与版本控制中签入的nuget.exe相同)。

在构建计算机上,它最初因“同意”错误而失败,如下所示:

Package restore is disabled by default. To give consent, open the Visual Studio Options dialog, click on Package Manager node and check 'Allow NuGet to download missing packages during build.' You can also give consent by setting the environment variable 'EnableNuGetPackageRestore' to 'true'.

这似乎很奇怪,因为在此特定示例中,没有要还原的软件包。 我正在尝试构建一个没有任何其他软件包依赖项的软件包。 为了克服此错误,我通过强制EnableNuGetPackageRestore环境变量开始运行它(在MSBuild Exec任务中),如下所示:

Command="(set EnableNuGetPackageRestore=true) & $(NuGetExe) pack $(NuGetSpecFile) $(NuGetPackArgs)"

克服同意问题后,构建机器构建日志中的下一个错误是:

A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 168.62.224.25:443

该IP地址是nuget.org的地址。

似乎nuget.exe尝试执行自动更新本身或其他任务之类的操作。

Q1:有什么办法可以禁用此行为? 如果是自动更新,可以使用某种命令行选项来防止这种情况。

Q2:尽管nuget docs站点将-ConfigFile列为“ nuget pack”的有效参数,但它不会接受。 该参数应该起作用吗?

问题3:如果所有其他方法均失败,我如何获取NuGet.exe来查看我们的内部ProGet服务器(它可以访问的内部服务器),而不是尝试查看nuget.org(被阻止的访问)?

嗯,我已经检查了NuGet.exe的“ bootstrapper”,而不是实际的程序。

一旦我签入%LOCALAPPDATA%\\ NuGet中找到的版本,它便停止尝试访问网络。

暂无
暂无

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

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