如果JAR-1中有一個類com.app.A加載到JVM中,那麼我們如何在運行時從另一個JAR-2加載同一個類的新版本com.app.A?如何在運行時加載同一個java類的新版本?
有什麼不同的方法來做到這一點?
- 作者Abhijit
如果JAR-1中有一個類com.app.A加載到JVM中,那麼我們如何在運行時從另一個JAR-2加載同一個類的新版本com.app.A?如何在運行時加載同一個java類的新版本?
有什麼不同的方法來做到這一點?
- 作者Abhijit
你有兩個選擇:
第一: 喜歡這裏的描述你可以做到這一點:
Java ClassLoader: load same class twice
二:你可以只嘗試手動替換舊*.class
到新的一個。如果您做了重大更改,例如添加的方法等,您可以捕獲大量例外情況。我更改了一些日誌記錄,對內部方法進行了重構,併爲我工作。