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

Visual Studio通过Nexus OSS NuGet代理提示“No package found”求助

解决Nexus NuGet代理在Visual Studio中无法找到包的问题

1. 核对Nexus NuGet代理仓库配置

  • 确认远程存储URL完全为https://api.nuget.org/v3/index.json,检查是否存在拼写错误、多余空格或协议错误(比如误用http而非https)。
  • 查看Nexus仓库的代理连接设置:确认未开启不必要的认证,若Nexus需通过代理访问外网,需确保自身代理配置正确(即使你提到Nexus能访问目标URL,也需二次确认)。
  • 检查仓库状态:在Nexus仓库列表中,确认该NuGet代理仓库显示为“Online”,若显示“Remote Unavailable”,可通过telnet api.nuget.org 443测试端口连通性。

2. 验证Nexus NuGet仓库访问端点

  • 在浏览器中访问Nexus的NuGet仓库端点:假设你的Nexus域名为nexus.example.com,则代理仓库端点应为https://nexus.example.com/repository/[你的仓库名]/v3/index.json,确认该URL能正常返回与api.nuget.org结构一致的JSON内容。
  • 若通过Nginx访问端点出现404或其他错误,检查反向代理配置:
    • 确保Nginx正确传递请求头,示例配置片段:
      location /repository/ {
          proxy_pass http://localhost:8081/repository/;
          proxy_set_header Host $host;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      
    • 重启Nginx服务:sudo systemctl restart nginx,并查看Nginx错误日志/var/log/nginx/error.log排查报错。

3. 检查Visual Studio的NuGet源配置

  • 打开Visual Studio的NuGet包管理器设置,确认添加的Nexus源地址为正确的仓库端点(即上述https://nexus.example.com/repository/[你的仓库名]/v3/index.json),而非Nexus主页地址。
  • 命令行测试源有效性:执行dotnet nuget list source查看已配置源,再用dotnet nuget search Newtonsoft.Json -s [你的Nexus源名称]测试是否能搜到包。若命令行也搜不到,问题出在Nexus或Nginx;若命令行能搜到,再排查Visual Studio缓存。
  • 清除NuGet缓存:在Visual Studio中依次点击“工具”->“选项”->“NuGet包管理器”->“常规”,点击“清除所有NuGet缓存”;或命令行执行dotnet nuget locals all --clear。

4. 排查Nexus权限与索引设置

  • 确认Nexus中该NuGet代理仓库的权限配置:若Visual Studio未配置认证,需允许匿名访问;若使用认证,需给访问用户分配nx-repository-view-nuget-[仓库名]-read权限。
  • 刷新仓库索引:进入仓库配置页面的“Maintenance”选项卡,点击“Repair Index”手动触发索引刷新,再查看“Browse”页面是否有包被缓存。

5. 处理SSL证书问题

  • 若Nginx使用自签名SSL证书,Visual Studio可能因不信任证书导致通信失败:
    • 将Nginx的SSL证书导入Windows的“受信任根证书颁发机构”;
    • 测试阶段可临时关闭证书验证(不推荐生产环境):编辑C:\Users\[用户名]\AppData\Roaming\NuGet\NuGet.config,添加以下配置:
      <configuration>
        <packageSources>
          <add key="NexusNuGet" value="https://nexus.example.com/repository/[你的仓库名]/v3/index.json" />
        </packageSources>
        <config>
          <add key="sslVerify" value="false" />
        </config>
      </configuration>
      

内容的提问来源于stack exchange,提问作者ameni .elfarh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 12:05:59