[英]How to solve this Android Project dependency issue?
我在Eclipse下有以下項目:
A(Android項目)=> B(Java項目)=> C(Java項目)
其中符號“=>”表示符號左側的項目依賴於符號右側的項目,項目B的構建路徑在所有情況下始終包含項目C.
如果我在項目A的構建路徑下包含項目B和C,則A運行沒有問題。
但是, 如果我在項目A的構建路徑下包含項目B而不包括項目C,則A在運行時崩潰。
是否有替代解決上述問題而不在項目A的構建路徑下包含項目C,因為A和C之間沒有直接依賴關系?
請注意,C不應該轉換為Android項目,以便允許依賴它的其他java項目(此處未指出)也可以運行。
雖然有很多解決方法,但是你無法解決基本問題。
必須包含所有內容,否則您將獲得classnotfound異常。 您始終可以將Project C構建到JAR文件並將其包含在lib路徑中,然后您就不必具有項目依賴性。 將項目B構建到Jar文件,您可以開發您的android項目,而無需任何eclipse Java項目的引用。
如果您下載一個jar文件,例如Farmors super lib far.jar,並且我的lib有其他依賴項,您必須將它們提取到依賴關系等等,這樣就可以這樣想想這就是為什么我們有像maven這樣的高級工具來處理所有這些依賴混亂。
我認為在您的情況下,最好的解決方案是將您的項目移動到使用maven或ivy等工具。 這些工具可以幫助您管理這種依賴管理的問題。 當然,這些工具提供了更多功能,例如,改進構建過程,過濾資源,自動部署工件,創建報告等
我和maven一起工作很多,我試着解釋一下如何在你的情況下解決問題。 首先,你可以對我們所有的項目(包括Android項目)進行編組,並定義你的項目之間的關系( A取決於B ,誰依賴於C ),只為maven項目設置最重要的項目,'pom .xml'文件。
在[this link] [3]中,您可以閱讀有關依賴機制的介紹 。 這個想法很簡單:你需要定義每個項目所需要的組織,可以是網絡周圍的工件或庫。 Maven將下載所有內容並構建每個項目。 在您的情況下,您可能需要構建C項目,B項目將自動使用(一旦配置正確),依此類推。
注意理解依賴關系的管理方式,因為它是關鍵。
順便說一句,在Android項目中,您可能需要使用適合您目的的[Android maven插件] [4]。
祝好運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.