So fügen Sie den vorhandenen Klassen in der JAR-Datei neue Java-Klassen hinzu

7

Ich habe neue Module für in Java geschriebene Software erstellt. Diese Software wird von JAR-Datei ausgeführt. Meine Klassen erweitern die Klassen in dieser Software. Ich möchte ein Plugin schreiben, das der JAR-Datei neue Klassen hinzufügt. Ich weiß, wie man eine JAR-Datei in das Verzeichnis extrahiert und sie mit dem Paket java.util.jar zur jar-Datei hinzufügt. Da es aber viele Dateien aus der Datei zu extrahieren gibt, ist es möglich, neue Klassen hinzuzufügen, ohne die Dateien zu extrahieren in den Ordner, irgendwie direkt.

    
user1574866 03.08.2012, 18:16
quelle

3 Antworten

12

Sie können den folgenden Befehl verwenden

%Vor%     
Bhavik Ambani 03.08.2012 18:19
quelle
4
%Vor%

Ermöglicht das Hinzufügen neuer Dateien / Aktualisieren vorhandener Dateien in jar ohne Extrahieren.

    
kosa 03.08.2012 18:17
quelle
4

Ihre Frage gibt an, dass Sie dies programmgesteuert durchführen möchten, nicht über die Befehlszeile jar tool.

Aus den Dokumenten geht hervor, dass Sie mindestens eine JarInputStream von einer vorhandenen JarFile , iterieren Sie die Einträge mit getNextJarEntry , und schreiben Sie an eine JarOutputStream mit den Einträgen, auch eigene neue Dateien mit neuen % co_de hinzufügen % Objekte für jede neue Datei.

Hier ist Beispielcode zum Schreiben eines Jar von Grund auf programmatisch, dies sollte Die Unterschiede bestehen darin, dass die meisten JarEntry -Objekte von JarEntry kommen.

    
pb2q 03.08.2012 18:29
quelle

Tags und Links