Docker中Nuget Restore在.NET 6.0最新SDK失败,特定版本正常
问题原因
- .NET SDK 6.0的后续版本(比如你使用的6.0.400,或是浮动标签
6.0指向的新版本)里,NuGet直接把NU1803这个HTTP源警告升级成了错误。在6.0.3版本时这还只是个不影响构建的警告,但新版本中这个警告会直接阻断dotnet restore流程。 - 官方提到的“未来版本移除HTTP支持”是长期规划,但在6.0的后期SDK更新中,提前将该警告设为错误级别,目的是推动用户尽快迁移到HTTPS源。
解决办法
临时应急方案(不建议长期使用)
要么在dotnet restore命令中添加参数跳过HTTP源检查:
dotnet restore --warn-on-http-source false
要么在项目的NuGet.config文件中添加如下配置:
<configuration> <config> <add key="warnOnHttpSource" value="false" /> </config> </configuration>
长期推荐方案
将你的NuGet源迁移到HTTPS协议,这是官方倡导的安全做法,也能避免后续版本更新再次出现类似兼容性问题。
内容的提问来源于stack exchange,提问作者Paul Ruane
相关产品推荐
相关产品推荐

