You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用nuget push命令无法上传snupkg至Artifactory无响应如何解决

snupkg推送至Artifactory无响应/失败解决方案

核心原因

网页端手动上传走的是Web表单上传链路,和NuGet CLI调用V3接口推送的链路鉴权逻辑、路径校验规则完全不同,无响应、推送失败基本是参数配置不兼容Artifactory接口规则导致的,和snupkg包本身无关。

修复步骤

  • 移除命令里的通配符:不要直接写*.snupkg作为包路径,替换为snupkg文件的完整准确文件名。部分版本的NuGet CLI对非.nupkg后缀的包做通配符匹配时存在逻辑bug,会直接进入死锁无任何输出。
  • 补全Source地址末尾斜杠:你当前使用的符号仓库地址缺少结尾的/,Artifactory的NuGet V3接口对路径格式校验严格,不带末尾斜杠会触发307跳转,而NuGet CLI默认不会处理push请求的跳转逻辑,直接挂起无响应。正确的地址格式为https://artifactory.test.be/artifactory/api/nuget/v3/nuget/symbol/。
  • 替换ApiKey格式:不要使用用户名:密码拼接的字符串作为ApiKey,需要登录Artifactory在个人配置页生成专门的NuGet协议专用API Key填入参数。Artifactory对Basic认证拼接的身份信息在符号包推送场景下会直接断开连接,且不会返回错误提示。
  • 放弃nupkg自动同步snupkg的方案:普通nupkg推送时自动关联上传snupkg是nuget.org公共源的专属实现逻辑,私有部署的Artifactory不支持该关联上传能力,需要分别将nupkg推送到常规NuGet仓库、snupkg推送到独立的符号仓库,两个仓库的Source地址不能混用。
  • 开启详细日志定位隐藏问题:如果调整以上配置后仍然异常,在push命令末尾追加-Verbosity detailed参数,就能看到默认日志级别下被隐藏的报错信息,常见的有SSL证书校验失败、代理拦截、权限不足等问题。

正确命令参考

nuget push "Your.Package.Name.1.2.3.snupkg" -Source "https://artifactory.test.be/artifactory/api/nuget/v3/nuget/symbol/" -ApiKey "你的Artifactory NuGet专用APIKey" -SkipDuplicate -Verbosity detailed

内容的提问来源于stack exchange,提问作者kevingoos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 23:45:45