簡體   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