2016-11-09 38 views
1

我有一個multimodule maven項目。一個模塊對Maven項目中的其他模塊有幾個依賴關係。我想檢查每個類在運行時哪個頂級模塊 - 有沒有辦法通過反射來實現這一點?在運行時識別模塊

例如:

com.company:running-module:jar:1.0.0 
+- com.company:top-level-module-1:jar:1.0.0:compile 
| \- com.company:low-level-module-1:jar:1.0.0:compile 
|  \- ClassOfInterest.java 
+- com.company:top-level-module-2:jar:1.0.0:compile 
| \- com.company:low-level-module-1:jar:1.0.0:compile 
|  \- ClassOfInterest.java 
\- com.company:top-level-module-3:jar:1.0.0:compile 
    \- com.company:low-level-module-2:jar:1.0.0:compile 
     \- OtherClassOfInterest.java 

ClassOfInterest檢查將返回top-level-module-1top-level-module-2在檢查OtherClassOfInterest將返回`頂層模塊-3。

+0

爲什麼你需要這些信息?你想解決什麼樣的問題? – khmarbaise

回答

0

如果有辦法做到這一點,這將是非常hacky。

修改每個模塊以擁有不同的頂級包,然後通過檢查完整的類名輕鬆完成。