


Wie erstellt man ordnungsgemäß eine JAR-Datei mit JarOutputStream in Java?
Erstellen einer JAR-Datei mit JarOutputStream
Dieser Artikel befasst sich mit der programmgesteuerten Erstellung von JAR-Dateien mithilfe der Java-Klasse java.util.jar.JarOutputStream. Auch wenn die erstellte JAR-Datei zunächst korrekt aussieht, kann es bei der Verwendung dazu kommen, dass die Bibliotheken nicht geladen werden. Der Grund liegt in bestimmten undokumentierten Macken von JarOutputStream.
Macken von JarOutputStream:
- Verzeichnisnamen müssen mit einem Schrägstrich „/“ enden.
- Pfade müssen „/“-Schrägstriche verwenden, nicht „“.
- Einträge dürfen nicht mit einem „/“-Schrägstrich beginnen.
Richtiger Ansatz mit JarOutputStream:
Um eine JAR-Datei mit einer Manifestdatei mit der richtigen Methode zu erstellen, befolgen Sie diese Schritte:
- Erstellen Sie ein Manifest-Objekt und füllen Sie seine Hauptattribute aus.
- Erstellen ein JarOutputStream unter Verwendung des FileOutputStream- und Manifest-Objekts.
- Verwenden Sie die add()-Methode, um Dateien und Verzeichnisse rekursiv in die JAR-Datei einzuschließen.
add()-Methode:
<code class="java">private void add(File source, JarOutputStream target) throws IOException { String name = source.getPath().replace("/", "/"); // Ensure path uses '/' slash if (source.isDirectory()) { if (!name.endsWith("/")) { name += "/"; // Add trailing '/' for directories } JarEntry entry = new JarEntry(name); entry.setTime(source.lastModified()); target.putNextEntry(entry); target.closeEntry(); for (File nestedFile : source.listFiles()) { add(nestedFile, target); } } else { JarEntry entry = new JarEntry(name); entry.setTime(source.lastModified()); target.putNextEntry(entry); try (BufferedInputStream in = new BufferedInputStream(new FileInputStream(source))) { byte[] buffer = new byte[1024]; while (true) { int count = in.read(buffer); if (count == -1) break; target.write(buffer, 0, count); } target.closeEntry(); } } }</code>
Durch Befolgen dieser Richtlinien können Sie JAR-Dateien programmgesteuert mit JarOutputStream erstellen, die mit anderen Java-Tools kompatibel sind.
Das obige ist der detaillierte Inhalt vonWie erstellt man ordnungsgemäß eine JAR-Datei mit JarOutputStream in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

In dem Artikel werden mit JPA für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden erläutert. Es deckt Setup, Entity -Mapping und Best Practices zur Optimierung der Leistung ab und hebt potenzielle Fallstricke hervor. [159 Charaktere]

In dem Artikel werden Maven und Gradle für Java -Projektmanagement, Aufbau von Automatisierung und Abhängigkeitslösung erörtert, die ihre Ansätze und Optimierungsstrategien vergleichen.

In dem Artikel werden benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning- und Abhängigkeitsmanagement erstellt und verwendet, wobei Tools wie Maven und Gradle verwendet werden.
