我正在使用nexus OSS 3.15.2-01及其新实例。 我们面临的问题是nuget proxy repos,如果我尝试手动在nexus服务器上卷曲nuget org,它将到达URL。但是当我尝试从VS或cmd下载它时,它说找不到文件。
我为nuget和新存储库nuget_gallery创建了一个单独的blob,并在代理中提供了nuget org来对其进行配置,但它不起作用
在VS中,
严重性代码描述项目文件行抑制状态 错误Feed“ nexus prod [repo URL]”列出了软件包“ Microsoft.AspNet.WebApi.Client.5.2.7”,但多次下载nupkg的尝试均失败。提要无效,或者在当前操作进行过程中删除了必需的软件包。确认Feed中存在该程序包,然后重试。 找不到软件包“ Microsoft.AspNet.WebApi.Client.5.2.7”。
如果我们浏览存储库,但是即使在尝试下载版本时,仍会以“未找到文件(0字节)”的形式在链接中获取该版本。
答案 0 :(得分:0)
您可以尝试以下提示以检查是否有帮助:
1 。通过命令行清除所有NuGet软件包缓存:nuget locals all -clear。
2 。关闭所有Visual Studio实例,然后删除C:\Users\xxx\AppData\Roaming\NuGet\NuGet.Config
位置中的nuget.config文件,然后重新打开Visual Studio以还原nuget程序包。
3 。检查是否存在阻止nuget安装软件包的防火墙策略或其他代理设置。
并且请检查从 Nexus 抓取软件包时是否仅出现该问题 ,或者从 nuget.org 下载软件包时也发生该问题。也许您可以从this thread获得一些帮助。
答案 1 :(得分:0)
参加聚会有点晚,但是我遇到了同样的问题。它似乎归结于lack of NuGet protocol 3 support in Nexus。
解决方法是像这样向我的nuget.config中添加protocolVersion =“ 2”;
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<!--To inherit the global NuGet package sources remove the <clear/> line below -->
<clear />
<add key="your-nexus-repo" value="http://your-nexus-repo/nexus/service/local/nuget/your-repo-name/" protocolVersion="2"/>
</packageSources>
</configuration>
我仍然对dotnet core 3软件包有问题,因此还必须重新添加nuget.org(如果您的全局配置中包含nuget.org,则必须删除<clear/>
)
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />