wake-up-neo.com

(Java) Verwenden Sie die Eingabeaufforderung, um eine .jar-Datei aus mehreren .class-Dateien zu erstellen

Ich habe eine .Java-Datei mit dem Namen Main.Java geschrieben und mit dem Javac in der Windows-Eingabeaufforderung kompiliert. Der Compiler erstellt mehrere .class-Dateien (genannt Main.class, Main $ 1.class & Main $ 2.class - vermutlich, weil ich in meiner Main.Java-Datei anonyme innere Klassen habe). Ich versuche, eine ausführbare .jar-Datei zu erstellen, sodass ich auf eine Verknüpfung doppelklicken kann, um diese Anwendung auszuführen (dies ist eine Java-Swing-Anwendung). Ich bin jedoch nicht erfolgreich, wenn ich zum Verzeichnis der drei Klassendateien navigiere und Folgendes eingebe:

jar cfv file.jar Main.class Main$1.class Main$2.class

Die Eingabeaufforderung gibt dann diesen Text aus:

added manifest
adding: Main.class(in 4871) (out = 2848)(deflated 41%)
adding: Main$1.class(in 1409) (out = 833)(deflated 40%)
adding: Main$2.class(in 1239) (out = 767)(deflated 38%)

Trotzdem, wenn ich auf die Datei file.jar im Windows Explorer doppelklicke, wird einfach nichts passiert. Es wird keine Swing-Anwendung geöffnet.

Hoffentlich kann mir jemand dabei helfen. Vielen Dank

Am besten ... SL

7
Skyler

Sie müssen den Einstiegspunktschalter -e (mit dem Namen der Klasse, die die main()-Methode enthält) als solche verwenden:

jar cfve file.jar Main Main.class Main$1.class Main$2.class
14
iamnotmaynard

Irgendetwas muss dem Java sagen, welche Klasse automatisch gestartet werden sollte. Das ist das Manifest - siehe Beschreibung hier Sie müssen die Manifest.mf in Ihr Glas packen.

5
michael_s
  1. Eingabeaufforderung öffnen
  2. cd Gehen Sie zu dem Pfad, in dem die JAR-Datei vorhanden ist
  3. befehl ausführen jar xf fileName.jar
  4. Es werden com, META-INF & Copyright.mk Dateien generiert
  5. Wechseln Sie zu dem jeweiligen Paket, in dem Sie die Klassendatei ändern möchten (im Allgemeinen Klassendateien im Verzeichnis com).
  6. Laden Sie den JAD.exe von Google (ZIP-Datei) herunter.
  7. Extrahieren Sie die ZIP-Datei, die Sie erhalten, jad.exe
  8. Platzieren Sie die Klassendatei (die Sie ändern möchten) in dem Ordner, der jad.exe enthält.
  9. Gehen Sie zur Eingabeaufforderung und führen Sie jad fileName.class aus (der Klassenname, den Sie ändern möchten).
  10. fileName.jad-Datei wird generiert und in fileName.Java umbenannt.
  11. kompilieren Sie den fileName.Java (wenn er auf eine andere Klassendatei verweist, konfigurieren Sie ihn in Eclipse entsprechend)
  12. einmal kompiliert, ersetzen Sie die Klassendatei in dem in Schritt 4 definierten Verzeichnis
  13. Gehen Sie zur Eingabeaufforderung, cd, Schritt 4, und führen Sie jar cf fileName.jar aus (* steht für alle Klassendateien, unabhängig von den Verzeichnissen). 
0
Praveen
  1. offene cmd (windows + r type cmd)
  2. geben Sie einfach den Befehl als "Dose" ohne Quatronen ein
  3. es wird einige Optionen und deren Verwendung geben.
  4. benutze was du willst
  5. um eine JAR-Datei mit der Klasse zu erstellen, geben Sie an, dass Sie jar cfv dateiname.jar example.class example2.class etc. 
  6. WENN Ihr Swing mit javac -deprecation SwingApplication.Java kompiliert, aber die JDK-Version muss größer sein als die Version JDK1.1
  7. führen Sie Java SwingApplication aus
  8. Alles Gute
0
Gopal Reddy