[英]Classpath of classes compiled with Javassist
顧名思義,用Javassist編譯的類的類路徑是什么?
我的情況是:A類是使用Javassist編譯的。 類B是使用Java Compiler API編譯的,並引用了類A。問題是類B對類B不可見。
有任何想法嗎?
類B的“類路徑”不取決於如何編譯類(例如,創建類文件),而是取決於類的加載方式。
Java使用類的類加載器來查找該類引用的所有類。
每個類加載器可以有一個父類加載器,通常loader.loadClass
首先向其父類加載器詢問任何類,並在失敗的情況下嘗試加載類本身。
因此,只要確保A
類是B類的類加載器可見,這意味着的類加載器A
必須是類的類加載器的父(或父的家長,或......) B
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.