Neuen Code in ein laufendes Java-System laden
Klassen neu laden
Vorhandene Klassen neu laden mit Vorhandene Daten können zu Instabilität in Ihrem System führen. Erwägen Sie stattdessen die Verwendung des folgenden Ansatzes:
Neue JAR-Dateien laden
So laden Sie eine neue JAR-Datei in ein laufendes Java-System:
Müllsammlung nicht verwendeter Klassenlader
Klassenlader, die nicht verwendet werden Länger genutzte Dateien werden im Garbage Collection gesammelt, sofern keine Speicherlecks vorliegen. Zu den häufigsten Quellen für Speicherlecks gehören ThreadLocal, JDBC-Treiber und java.beans.
Objektdaten beibehalten
Wenn Sie benötigen, dass Objektdaten über Klassenneuladungen hinweg bestehen bleiben, sollten Sie die Verwendung in Betracht ziehen ein Persistenzmechanismus wie die Serialisierung.
Hinzufügen neuer Klassen zu einer vorhandenen Klasse Lader
Es ist zwar möglich, mithilfe von URLClassLoader.addURL neue Klassen zu vorhandenen Klassenladern hinzuzufügen. Beachten Sie jedoch, dass eine Klasse, wenn sie während dieses Vorgangs nicht geladen werden kann, in dieser Klasse nicht geladen werden kann Loader-Instanz.
Das obige ist der detaillierte Inhalt vonWie kann ich Java-Klassen und JAR-Dateien in einem laufenden System dynamisch laden und neu laden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!