繁体   English   中英

运行 msbuild /t:restore 在 Jenkins 下恢复 nuget 包时出错

[英]Error when running msbuild /t:restore under Jenkins to restore nuget packages

我们在构建过程中得到的错误是:

Unable to load the service index for source https://api.nuget.org/v3/index.json.
An error occurred while sending the request.
The underlying connection was closed: An unexpected error occurred on a send.
Authentication failed because the remote party has closed the transport stream.

如果我远程进入构建机器并从源代码管理中提取源代码,我可以构建并让 VS 毫无问题地恢复 nuget 包。

我也可以在机器上的浏览器中打开https://api.nuget.org/v3/index.json ,所以我不相信是网络/防火墙问题。

注意 Jenkins 在 SYSTEM LOCAL 下运行

该问题似乎与禁用 TLS 1.2 的 Win7 有关。 在机器上运行它并且错误停止了:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v DisabledByDefault /t REG_DWORD /d 0 /f /reg:32
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v DisabledByDefault /t REG_DWORD /d 0 /f /reg:64
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v Enabled /t REG_DWORD /d 1 /f /reg:32
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v Enabled /t REG_DWORD /d 1 /f /reg:64

请注意,我认为您需要同时添加到 32 位和 64 位注册表,因为 msbuild 可能会根据构建在任何一个中运行

暂无
暂无

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

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