実行中の Java システムへの新しいコードのロード
クラスの再ロード
既存のクラスの再ロード既存のデータはシステムを不安定にする可能性があります。代わりに、次のアプローチの使用を検討してください。
新しい JAR ファイルのロード
実行中の Java システムに新しい JAR ファイルをロードするには:
未使用クラスのガベージ コレクションローダー
使用されなくなったクラス ローダーは、メモリ リークがない限り、ガベージ コレクションされます。メモリ リークの一般的な原因には、ThreadLocal、JDBC ドライバ、および java.beans が含まれます。
オブジェクト データの保持
クラスのリロード後もオブジェクト データを保持する必要がある場合は、次の使用を検討してください。シリアル化などの永続化メカニズム。
既存のクラスへの新しいクラスの追加ローダー
URLClassLoader.addURL を使用して既存のクラス ローダーに新しいクラスを追加することは可能ですが、このプロセス中にクラスのロードに失敗すると、そのクラスにロードできなくなることに注意してください。ローダー インスタンス。
以上が実行中のシステムで Java クラスと JAR ファイルを動的にロードおよび再ロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。