NuGet 警告 NU3037

问题

NuGet 包签名已过期。 包签名与用于生成签名的证书具有相同的有效期。 包签名在该有效期之外无效。 为确保长期有效性(即使在签名证书的有效期之外),应使用可信时间戳为包签名添加时间戳。 在包签名仍然有效且未过期时,必须添加可信时间戳。

仅在 Windows 上,NU3037 可能会在第一次观察到根证书时出现,并显示消息“存储库主签名有效期已过期”。如果重试可解决此问题,则有一选项可能会有所帮助

解决方案

  • 使用未过期的证书重新对包签名。 (可选)在签名时添加可信时间戳,以确保签名的长期有效性。
  • 仅对接受模式,可忽略此警告。

注意

当 NuGet 的签名验证模式设为“接受”(默认值)时,具有过期包签名的包将被视为未签名的包,但仍会安装。 NU3037 将显示为警告。 当 NuGet 的签名验证模式设为“需要”或在运行 nuget verify -signatures 命令时,NU3037 将从警告提升为错误。