NuGet.exe 从命令行给出"existing connection was forcibly closed by the remote host"错误



我在从命令行调用NuGet.exe时遇到问题:

nuget.exe restore solution.sln

在我的本地机器上,这从命令行运行时没有问题。在构建服务器上,我立即看到以下错误:

An existing connection was forcibly closed by the remote host

作为背景,我正在为.NET Framework应用程序在构建服务器上设置Jenkins。

无论我是让Jenkins运行命令,还是打开CMD窗口(管理员或其他(并自己运行,都会出现此错误。即使是-Verbosity detailed标志也一无所获。

奇怪的是,在Visual Studio 2017中对解决方案进行恢复时,效果很好。

以前有人见过这个吗?或者有什么想法吗?

所以这是TLS的问题。在查阅了大量文章并了解了TLS在各个地方存在的一些问题后,我发现了这篇文章:在NuGet.org 上弃用TLS 1.0和1.1

我应用了上面提到的注册表更改(如下所示(,突然我超越了这个错误

reg add HKLMSOFTWAREMicrosoft.NETFrameworkv4.0.30319 /v SystemDefaultTlsVersions /t REG_DWORD /d 1 /f /reg:64
reg add HKLMSOFTWAREMicrosoft.NETFrameworkv4.0.30319 /v SystemDefaultTlsVersions /t REG_DWORD /d 1 /f /reg:32

我看到过类似的行为,这是由于我们的it安全团队阻止了该特定域。我可以从我们的开发机器访问它,但构建服务器(运行时未连接到域(正在阻塞。

相关内容

最新更新