Ik ben Java aan het leren en ik heb een probleem. Ik heb 6 verschillende klassen gemaakt, elk heeft zijn eigen main()
methode. Ik wil uitvoerbare .jar
maken voor elke klasse, dat wil zeggen 6 uitvoerbare .jar
-bestanden.
Tot nu toe heb ik geprobeerd
java -jar cf myJar.jar myClass.class
en ik krijg ‘Kan jarfile cf niet openen’. Ik doe iets fout maar ik weet niet wat. Ik gebruik ook Eclipse IDE als dat iets betekent.
Antwoord 1, autoriteit 100%
Om een .jar-bestand te maken, moet u jar
gebruiken in plaats van java
:
jar cf myJar.jar myClass.class
Bovendien, als u het uitvoerbaar wilt maken, moet u een invoerpuntaangeven (dwz een klasse met public static void main(String[] args)
) voor uw aanvraag. Dit wordt meestal bereikt door een manifest-bestand te maken met de Main-Class
koptekst (bijv. Main-Class: myClass
).
Maar zoals Mark Peters al aangaf, kun je met JDK 6 de optie e
gebruiken om het ingangspunt te definiëren:
jar cfe myJar.jar myClass myClass.class
Ten slotte kunt u het uitvoeren:
java -jar myJar.jar
Zie ook
Antwoord 2, Autoriteit 13%
Sinus die je hebt vermeld die je Eclipse gebruikt … Eclipse kan de potten voor je maken, zolang je elke klasse hebt uitgevoerd met eenmaal. Klik met de rechtermuisknop op het project en klik op Exporteren en selecteer vervolgens “Runnable JAR-bestand” onder de Java-map. Selecteer de klasnaam in de startconfiguratie, kies een plaats om de pot op te slaan en neem een beslissing om bibliotheken indien nodig aan te pakken. Klik op Voltooien, Handen op de broek wissen.
Antwoord 3, Autoriteit 8%
Vaak moet je meer in het manifest plaatsen dan wat je krijgt met de -e
-schakelaar, en in dat geval is de syntaxis:
jar -cvfm myJar.jar myManifest.txt myApp.class
die luidt: “Maak uitgebreide jarfilneName manifestfileName”, gevolgd door de bestanden die u wilt opnemen.
Merk op dat de naam van het manifestbestand dat u levert, alles kan zijn, als jar
zal het automatisch hernoemen en in het JAR-bestand op de juiste plaats worden geplaatst.
Antwoord 4, Autoriteit 5%
Way 1:
Laat we Java File Test.java hebben die Hoofdklasse Testa bevat
Nu compileren we ons Java-bestand eenvoudigweg als Javac Test.java
We maken bestand manifest.txt in dezelfde map en we schrijven hoofdklasse: mainclassname. b.v:
Main-Class: testa
Dan maken we JAR-bestand door deze opdracht:
jar cvfm anyname.jar manifest.txt testa.class
Dan uitvoeren we JAR-bestand door deze opdracht: java -jar anyname.jar
Way 2:
Laten we één pakket hebben met de naam één en elke klasse zit erin.
dan maken we een jar-bestand met dit commando:
jar cf anyname.jar one
vervolgens openen we manifest.txt in de map META-INF in het bestand anyname.jar en schrijven
Main-Class: one.mainclassname
in de derde regel., dan voeren we het jar-bestand uit met dit commando:
java -jar anyname.jar
om een jar-bestand te maken met meer dan één klassenbestand: jar cf anyname.jar one.class two.class three.class……
Antwoord 5
Zet alle 6 klassen in 6 verschillende projecten. Maak vervolgens jar-bestanden van alle 6 projecten. Op deze manier krijgt u 6 uitvoerbare jar-bestanden.