我有一個項目,這是在Java中6,這取決於項目B,這也是在Java中6覆蓋依賴
除了這些編譯編譯,我有兩個項目的依賴, C-6和C-7。 C-6是用Java編寫6項目C,而C-7被編譯在Java 7中
項目B具有相關項目C.在默認情況下,爲項目B引用項目C-7,這意味着它使用項目C的Java 7版本。有很多不同的項目引用項目B,它們都是用Java 7編譯的,所以這裏沒有問題。
但現在我有自己的項目中,這是用Java編寫6.現在,我想我的覆蓋B.依賴的依賴的問題是,即使我在項目中排除C-7,並添加依賴於C-6,當我在項目B中調用方法時,它將從C-7中獲得類。因此,我的應用程序崩潰,因爲它不兼容。
我該如何解決這個問題?我如何告訴我的依賴項B使用不同於通常依賴的依賴項C?請記住,很多項目都使用項目B作爲依賴關係,所以我不希望更改任何涉及更改其他項目的任何內容。
我理解這一點。但是,如果在項目B上使用exclude和include標記來包含/排除C-6,則項目A可以訪問C-6功能,但是當您在項目B上調用方法時,它將調用C-7方法。我在帖子中也解釋了這一點。 – Joetjah
你能解釋一點,因爲我有點困惑。據我瞭解:你有A - > B - > C7,並且你想A - > B - > C6。所以,如果你做A→C6&A→B x→C7,那麼這應該從類路徑中排除C7並將C6放在類路徑上。 ( - >是一個依賴項,x->是一個排除項)。所以,排除依賴於B,而不是A,這是我認爲你的問題所指出的。 –
不完全。你說明我想要什麼是正確的。但問題是,我不能排除B中的任何東西,除非我可以用(默認)配置文件或類似的東西做一些事情。關鍵是,我正在研究項目A.還有一些團隊正在研究W,X,Y,Z ......,它們在項目A的依賴關係層次結構(也就是客戶端)方面都是一樣的。所以我可以'只是在項目B中排除,因爲這會打破所有其他應用程序。 – Joetjah