我有一個包的依賴情況如下: 錯誤:爲什麼我的依賴軟件包沒有解決?
試圖收集依賴信息包「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是依賴線以及安裝情況。 –