J'ai un programme qui consiste en deux simples fichiers Java Swing.
Comment créer un fichier JAR exécutable pour mon programme ?
J'ai un programme qui consiste en deux simples fichiers Java Swing.
Comment créer un fichier JAR exécutable pour mon programme ?
Un fichier jar est simplement un fichier contenant une collection de fichiers java. Pour qu'un fichier jar soit exécutable, vous devez spécifier l'endroit où le fichier main
La classe est dans le fichier jar. L'exemple de code serait le suivant.
public class JarExample {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
// your logic here
}
});
}
}
Compilez vos classes. Pour créer un jar, vous devez également créer un fichier Manifest ( MANIFEST.MF
). Par exemple,
Manifest-Version: 1.0
Main-Class: JarExample
Placez les fichiers de classe de sortie compilés (JarExample.class,JarExample$1.class) et le fichier manifeste dans le même dossier. Dans l'invite de commande, allez dans le dossier où vos fichiers sont placés, et créez le jar en utilisant la commande jar. Par exemple (si vous nommez votre fichier manifeste comme jexample.mf)
jar cfm jarexample.jar jexample.mf *.class
Il créera l'exécutable jarexample.jar.
Sur Eclipse vous pouvez le faire simplement comme suit :
Cliquez à droite sur votre projet Java et sélectionnez Exportation .
Sélectionnez Java -> Fichier JAR exécutable -> Suivant.
Sélectionnez la Configuration de lancement et choisissez le fichier de projet comme votre Classe principale
Sélectionnez le dossier de destination où vous souhaitez l'enregistrer et cliquez sur Terminer.
jar cvfe myjar.jar package.MainClass *.class
donde MainClass
est la classe avec votre main
méthode, et package
es MainClass
du paquet.
Notez que vous devez compiler votre .java
pour .class
avant de faire cela.
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
Cette réponse est inspirée par le commentaire de Powerslave sur une autre réponse.
Je reçois une erreur, Error: Could not find or load main class mtx.testClass Caused by: java.lang.ClassNotFoundException: mtx.testClass
Si vous utilisez maven, ajoutez ce qui suit à votre fichier pom.xml fichier :
<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>
Ensuite, vous pouvez exécuter mvn package
. Le fichier jar sera situé sous dans le répertoire cible répertoire.
Il est trop tard pour répondre à cette question. Mais si quelqu'un cherche cette réponse maintenant, je l'ai fait fonctionner sans erreur.
Tout d'abord, assurez-vous de télécharger et d'ajouter maven vers le chemin . [ mvn --version
] vous donnera les spécifications de la version si vous avez ajouté au chemin correctement.
Maintenant, ajoutez le code suivant dans le fichier projet maven [ pom.xml
] , dans le code suivant, remplacez par votre propre point d'entrée du fichier principal, par exemple [ com.example.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>
Maintenant, allez à la ligne de commande [ CMD
] dans votre projet et tapez mvn package
et cela va générer un fichier jar comme quelque chose comme ProjectName-0.0.1-SNAPSHOT.jar
sous target
répertoire.
Naviguez maintenant vers le cible répertoire par cd target
.
Enfin, le type java -jar jar-file-name.jar
et oui, cela devrait fonctionner avec succès si vous n'avez pas d'erreurs dans votre programme.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
0 votes
Qu'est-ce que vous demandez ? Comment exécuter le jar ou comment créer un exécutable à partir du jar (une commande, comme run.cmd) ?
0 votes
En rapport : superuser.com/questions/912955/