NuGet 错误 NU3004
方案 1
来自源“https://contoso.com/index.json”的包“SamplePackage v1.0.0”:包未签名。
来自源“https://contoso.com/index.json”的包“SamplePackage v1.0.0”:signatureValidationMode 设置为必需项,因此仅当受信任的签名者签名时,包才会予以获批;但是,此包为未签名状态。
问题
如果从 nuget verify -signatures
NuGet 客户端尝试验证未签名的包。
如果将 signatureValidationMode
指定为 require
时从还原或安装
require
验证模式不支持未签名的包,而系统在尝试安装未签名的包。
解决方案
请确保要安装或传递给 nuget verify -signatures
命令的包均包含包签名。
方案 2
来自源“https://contoso.com/index.json”的包“SamplePackage v1.0.0”:此存储库指示其所有包都已完成存储库签名;但是,此包为未签名状态。
问题
存储库表明其所有包均已完成存储库签名。 但是,下载了未签名的包。
解决方案
警告
使用多个 NuGet 客户端时可能会出现此错误(请参阅 NuGet/Home#7997)。 请升级到 nuget.exe 5.1.0 或更高版本、Visual Studio 2019 16.1 或更高版本,以及 .NET SDK 2.1.70X 或是 2.2.30X 或更高版本。
可使用 dotnet nuget verify
或 nuget verify
命令检查包是否已签名。 如果包未签名,请联系包源,因为这属于意外行为。