我正在處理一個真正應該被編碼爲2個獨立項目的Java項目。因此,我試圖找到一種將每個子項目的代碼拆分爲自己的新項目的好方法。有2個構建文件可以構建和打包每個子項目。因此,是否有一種好方法可以檢索每個構建文件所需的所有資源和文件的列表,從而分離出我的項目?通過build.xml依賴性拆分Java項目
編輯:
我發現清單* .MF每個構建文件相關的文件,這些文件同時指定Main-Class
和Class-Path
。從Class-Path
,我可以確定每個新項目需要哪些JAR文件。這些都是隻運行其各自主要類的應用程序,所以如果我確定主類的相關類,則確定我在新項目中需要的類。
下面是該我目前的計劃:根據清單
- 複製舊項目進入一個新的項目
- 刪除不使用的構建文件,清單* .MF文件和未使用的JAR
- 刪除基於未使用的主要文件清單
- 使用的IntelliJ的內置功能,手動完成對文件和方法來檢查,如果他們任何地方引用刪除1 * 1,如果他們不。
我猜4步可以提高對...
UPDATE:
我現在已經完成分離出我的項目。我最終使用了IntelliJ的「Analyze Dependencies ...」(在10.0.3中它位於「Analyze」菜單下)。對於那些擁有該工具的用戶,默認情況下,它只搜索深度較大的依賴項1,因此請注意這一點並根據需要設置更大的深度。然後,您可以突出顯示核心類,它會向您顯示這些類依賴於指定深度的所有文件。在我的情況下,一個子項目的主要文件之一引用了另一個子項目的主文件,所以通過消除這個依賴關係,我可以將65個以上的文件作爲依賴關係刪除。
上述解決方案行之有效我,但我不喜歡說「你必須買這個工具,你想要做什麼......」於是,我讓這個問題在一個開放的希望開放來源解決方案。
感謝您的建議。我發現了MANIFEST *。爲每個構建指定類路徑上的JAR的MF文件,但我可以使用您的建議來確定在那裏指定的JAR是否不需要。對於其他資源和文件(主要是在這裏討論Java自定義類),我正在尋找主類依賴哪些類並將其手動分開的路徑。 – Briguy37 2011-05-17 13:33:56