首頁 > Java > java教程 > 如何將 JAR 檔案重新載入或新增到正在運行的 Java 應用程式?

如何將 JAR 檔案重新載入或新增到正在運行的 Java 應用程式?

Barbara Streisand
發布: 2024-12-06 04:10:09
原創
933 人瀏覽過

How Can I Reload or Add JAR Files to a Running Java Application?

在運行時重新加載和加載JAR 文件

要使Java 系統能夠在運行時加載和重新加載類,請考慮以下事項:

重新載入現有的類別

嘗試重新載入現有類別及其資料通常是不可取的,因為這可能會導致系統不穩定。

新增類別

將新類別載入到單獨的類別載入器是可行的選項:

ClassLoader loader = URLClassLoader.newInstance(new URL[] { yourURL }, getClass().getClassLoader());
Class<?> clazz = Class.forName("mypackage.MyClass", true, loader);
Class<? extends Runnable> runClass = clazz.asSubclass(Runnable.class);
Constructor<? extends Runnable> ctor = runClass.getConstructor();
Runnable doRun = ctor.newInstance();
登入後複製

類別載入器垃圾回收

不再使用的類別載入器可以由垃圾收集器回收,假設沒有記憶體洩漏( ThreadLocal、JDBC 驅動程式等可能會發生這種情況)。

資料持久性

要在類別重新載入時保留物件數據,請考慮序列化等持久性機制。

花俏的調試技巧

雖然調試系統提供了先進的能力,它們通常不太可靠且更難debug.

在現有類別載入器中新增類別

雖然URLClassLoader 允許新增URL,但如果類別最初載入失敗,它將永遠不會在該類別載入器中載入實例。

以上是如何將 JAR 檔案重新載入或新增到正在運行的 Java 應用程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板