Ich verwende ein benutzerdefiniertes Klassenladeprogramm, das URLClassLoader erweitert. Ich lade einige Klassen in meinen benutzerdefinierten Klassenlader und führe einige Aufgaben aus. Sobald die Aufgabe abgeschlossen ist, möchte ich den Klassenlader entsorgen. Ich habe das versucht, indem ich den Verweis auf null gesetzt habe.Entsorgen eines Klassenladeprogramms
Aber das sammelt nicht den Klassenlader.
Gibt es einen Weg, der helfen kann, was ich erreichen möchte?
Siehe http://stackoverflow.com/questions/148681/unloading-classes-in-java/148707#148707 –
nicht die gleiche Frage _quite_, dieser ist über die Klassenlader, anstatt die geladenen Klassen Entladen. –
Mein erster Ratschlag wäre zu überprüfen, was Ihre Klassen in Ihrem Klassenlader nicht verschrottet. Erstellen Sie einen Dump und analysieren Sie die Abhängigkeiten zu den Klassen, die Ihr Klassenlader besitzt. –