鍍金池/ 問答/Java  iOS/ java如何卸載一個已經(jīng)被加載的jar

java如何卸載一個已經(jīng)被加載的jar

現(xiàn)在有個需求,需要卸載一個已經(jīng)加載的jar,然后加載新的jar,試了網(wǎng)上的一些方法,都不太行,每次還是加載的舊jar里面的class

回答
編輯回答
殘淚

你可以把這個jar刪除,然后清緩存,然后pubish,如果還是加載,再把工具也關(guān)了然后再開,就可以了,

2017年6月14日 11:38
編輯回答
近義詞

刪除掉原來的jar,放入新的jar,然后啟動。再不重啟jvm的情況下, 是不是能, 卸載已經(jīng)加載的jar的。
因為jvm沒有提供卸載class功能。如果要實現(xiàn)每次加載新的jar ,可以試試jreble,但是它的原理不是卸載原來的class

2018年6月17日 15:02
編輯回答
心沉

并沒有提供類卸載的功能。只能gc自己判斷 。你可以自己定義個不同的Classaloader來加載。可以參考Tomcat

2017年5月18日 17:34