NuGet服务器在不同的网络上

时间:2018-05-30 11:04:51

标签: c# .net nuget nuget-package-restore nuget-server

我有一个依赖于某些nuget包的项目。 这个nuget包存在于nuget1nuget2服务器上。 问题是服务器位于不同的网络上。我只有一个可以同时使用。当恢复尝试连接到不可用的nuget1服务器时,它会显示404并失败。它不会尝试从nuget2恢复。我该如何解决这个问题?如果nuget2不可用,我可以请求nuget使用nuget1吗?

1 个答案:

答案 0 :(得分:1)

所有已配置的NuGet包源都必须可用于包安装并恢复正常工作。

来自GitHub: package resolution fails if unreachable source exists

  

例如,想象一下服务器是间歇性关闭的,它有一个新版本的xunit。作为用户,您将在多次安装之间安静地获得不一致的体验。

     

当你安装一个没有依赖关系的软件包时,这看起来很简单,但是当你有一个相当大的软件包图时会很快失控,这会导致你失去几天。

因此,一个选项可能是为两个服务器使用相同的DNS名称,并让网络管理员在每个指向相应服务器的网络上注册该名称。

因此,在网络1上,存在DNS别名nugetserver并指向10.0.0.1,而在网络2上,DNS别名nugetserver指向192.168.1.1

然后在Visual Studio中,将一个服务器(即nugetserver)配置为包源。