我有一个包的依赖情况如下: 错误:为什么我的依赖软件包没有解决?
试图收集依赖信息包“PkgB.2.0.414”相对于项目的测试NuGet包使用方法“,定位” .NETFramework,版本= v4.5' 尝试使用DependencyBehavior'Lowest'解决程序包“PkgB.2.0.414”的依赖关系 无法解析依赖关系'PkgC.1.0.0'。使用的源代码:'nuget.org','公司包源代码','本地测试','Microsoft和.NET','Microsoft Visual Studio Offline Packages'。
形势答: PkgA => PkgC
情况B: 则pkgB => PkgA => PkgC
当我安装情况的它的工作原理。当我安装情况B它的作品。但是,如果我安装A然后B它即使已经安装并且工作正常但未能找到Pkg C.
请记住以下环境:
这些都是安装精细各自分别所有软件包。 这个问题只有发生在使用NuGet饲料服务器。 我没有使用包共享作为安装源的问题。
来源: 我看过NuGet文档的版本和最近的算法,但我不明白我会违反它。
而且我没有看到指定的版本如何要么关系。 https://docs.nuget.org/ndocs/create-packages/dependency-versions#dependency-versions
我自己的结论:
好像问题是饲料服务器和它是如何发现的依赖关系。我正在看git上的NuGet.Server源码,但还没有注意到任何东西。我最终可能会放弃源代码并找出它。
不管这种情况如何,不管饲料来源的类型如何?
编辑:
这是一个私人的NuGet饲料和私人nugets不在,我可以公开分享任何回购协议。
我在这里引用的版本> =表示法来构建参考树。
<!-- Accepts any version 6.1 and above -->
<dependency id="ExamplePackage" version="6.1" />
PkgA,PkgB和PkgC是所有的依赖包还是它们之间有一些依赖关系?如果可能的话,请在这里分享这些软件包(不是您的nuget feed)以帮助我们重现此问题。 –
Wendy我列出了上面的依赖关系,但我没有具体说明它们是依赖关系。情况A:PkgA => PkgC情况B:PkgB => PkgA => PkgC是依赖线以及安装情况。 –