2012-12-11 127 views
0

我有一個帶有大類路徑的Java項目 - 許多項目是從不同的.jar文件導入的,這些不同的.jar文件已作爲依賴項添加(通過Maven)。僅列出當前項目的Java類路徑中的項目

我正在尋找一種編程方式來列出來自當前項目的類路徑上的所有項目,即,不包括從其他庫導入的所有類路徑項以及Java運行時環境本身。

我需要在運行時執行此操作,即它應該關閉實際的當前類路徑。

有沒有一個很好的方法來做到這一點,如果是的話如何?

回答

2

除非您創建自己的元數據,否則無法執行此操作。

對於JVM,類路徑中的項目之間沒有區別。一個罐子就是一個罐子。

您可以使用maven-dependency-plugin寫出本地而非傳遞性的依存關係列表,然後將其寫入文件,然後將該文件放入應用程序中。

+0

確定煩人但謝謝....是否還有可以識別的「當前罐子」的概念? – mikera

+0

不是。沒有。 – bmargulies