Ik heb een programma dat bestaat uit twee eenvoudige Java Swing-bestanden.
Hoe maak ik een uitvoerbaar JAR-bestand voor mijn programma?
Antwoord 1, autoriteit 100%
Een jar-bestand is gewoon een bestand dat een verzameling java-bestanden bevat. Om een jar-bestand uitvoerbaar te maken, moet u specificeren waar de main
-klasse zich in het jar-bestand bevindt. Voorbeeldcode zou als volgt zijn.
public class JarExample {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
// your logic here
}
});
}
}
Stel je lessen samen. Om een jar te maken, moet je ook een manifestbestand maken (MANIFEST.MF
). Bijvoorbeeld,
Manifest-Version: 1.0
Main-Class: JarExample
Plaats de gecompileerde uitvoerklassebestanden (JarExample.class,JarExample$1.class) en het manifestbestand in dezelfde map. Ga in de opdrachtprompt naar de map waar uw bestanden zijn geplaatst en maak de jar met de jar-opdracht. Bijvoorbeeld (als u uw manifestbestand de naam jexample.mf geeft)
jar cfm jarexample.jar jexample.mf *.class
Het zal een uitvoerbaar bestand jarexample.jar maken.
Antwoord 2, autoriteit 40%
In Eclipsekun je het eenvoudig als volgt doen:
Klik met de rechtermuisknop op uw Java-project en selecteer Exporteren.
Selecteer Java -> Uit te voeren JAR-bestand-> Volgende.
Selecteer de Startconfiguratie en kies het projectbestand als uw Hoofdklasse
Selecteer de doelmap waar u deze wilt opslaan en klik op Voltooien.
Antwoord 3, autoriteit 20%
Hier is het in één regel:
jar cvfe myjar.jar package.MainClass *.class
waarbij MainClass
de klasse is met uw main
methode, en package
het pakket van MainClass
is.
Houd er rekening mee dat u uw .java
-bestanden moet compileren naar .class
-bestanden voordat u dit doet.
c create new archive
v generate verbose output on standard output
f specify archive file name
e specify application entry point for stand-alone application bundled into an executable jar file
Dit antwoord is geïnspireerd op de opmerking van Powerslave op een ander antwoord.
Antwoord 4, autoriteit 3%
Als u maven gebruikt, voegt u het volgende toe aan uw pom.xml-bestand:
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>com.path.to.YourMainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Vervolgens kunt u mvn package
uitvoeren. Het jar-bestand bevindt zich onder in de map target.
Antwoord 5
Het is te laat om op deze vraag te antwoorden. Maar als iemand nu naar dit antwoord zoekt, heb ik het zonder fouten uitgevoerd.
Zorg er allereerst voor dat u maven aan paddownloadt en toevoegt. [ mvn --version
] geeft je versiespecificaties ervan als je het pad correct hebt toegevoegd.
Voeg nu de volgende code toe aan het maven-project[ pom.xml
] , vervang in de volgende code door uw eigen hoofdbestandsingangspunt voor bijvoorbeeld [ com.voorbeeld.test.Test].
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>
your_package_to_class_that_contains_main_file .MainFileName</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Ga nu naar de opdrachtregel [CMD
] in uw project en typ mvn package
en het zal een jar-bestand genereren als iets als ProjectName-0.0.1-SNAPSHOT.jar
onder target
directory.
Navigeer nu naar de targetdirectorydoor cd target
.
Typ ten slotte java -jar jar-file-name.jar
en ja, dit zou moeten werken als je geen fouten in je programma hebt.