0
Homebrew(以及其他軟件包管理者)如何解決依賴關係?什麼是特殊情況像循環依賴?這個任務是否有一個通用的模式,算法和/或數據結構?Homebrew如何解決依賴關係?
Homebrew(以及其他軟件包管理者)如何解決依賴關係?什麼是特殊情況像循環依賴?這個任務是否有一個通用的模式,算法和/或數據結構?Homebrew如何解決依賴關係?
解決有向非循環圖中的依賴性問題的一般算法被稱爲topological sorting。我非常肯定,這也是軟件包管理者所使用的。然而,這不適用於循環依賴。
對於循環(運行時)依賴關係,您可以(至少在RPM中)跳過對其中一個包的檢查,或通過在同一命令行上指定它們來「同時」安裝相互依賴的包。然後包管理器知道另一個包也將被安裝,因此依賴性得到滿足。
雖然我不認爲有構建時循環依賴的解決方案。
謝謝!我實際上正在開發一個.NET項目,我需要這個。我有一個有向圖,我使用拓撲排序來獲得頂點數組。 Quickgraph圖書館派上用場(如果有人閱讀此文件有相同的要求)。 –