Recherche de site Web

Comment créer et exécuter un fichier .Jar dans un terminal Linux


Un JAR (Java ARchive) est un format de fichier indépendant de la plate-forme utilisé pour regrouper de nombreux fichiers de classe Java et les métadonnées et ressources associées telles que du texte, des images, etc., dans un seul fichier. pour distribution.

Il permet aux environnements d'exécution Java de déployer efficacement une application entière dans un seul fichier d'archive et offre de nombreux avantages tels que la sécurité, ses éléments peuvent être compressés, raccourcissant les temps de téléchargement, permet le scellement et la gestion des versions des packages, prend en charge la portabilité. Il prend également en charge le packaging des extensions.

Dans cet article, nous montrerons comment créer une application Java simple et la regrouper dans un fichier JAR, et démontrerons comment exécuter un fichier .jar à partir du terminal Linux.

Pour ce faire, vous devez avoir installé l'outil de ligne de commande Java pour lancer une application Java, et l'indicateur -jar pour exécuter un programme encapsulé dans un fichier JAR. Lorsque cet indicateur est utilisé, le fichier JAR spécifié est la source de toutes les classes d'utilisateurs et les autres paramètres de chemin de classe sont ignorés.

Comment créer un fichier JAR sous Linux

1. Commencez par écrire une classe Java simple avec une méthode principale pour une application appelée TecmintApp, à des fins de démonstration.

vim TecmintApp.java

Copiez et collez le code suivant dans le fichier TecmintApp.java.

public class TecmintApp {
	public static void main(String[] args){
		System.out.println(" Just executed TecmintApp! ");
	}
}

Enregistrez le fichier et fermez-le.

2. Ensuite, nous devons compiler et regrouper la classe dans un fichier JAR à l'aide des utilitaires javac et jar. comme montré.

javac -d . TecmintApp.java
ls
jar cvf tecmintapp.jar TecmintApp.class
ls

3. Une fois tecmintapp.jar créé, vous pouvez maintenant exécuter le fichier à l'aide de la commande java comme indiqué.

java -jar tecmintapp.jar

no main manifest attribute, in tecmintapp.jar

À partir du résultat de la commande ci-dessus, nous avons rencontré une erreur. La JVM (Java Virtual Machine) n'a pas pu trouver notre attribut manifeste principal, elle n'a donc pas pu localiser la classe principale contenant la méthode principale ( public static void main (String[] args)).

Le fichier JAR doit avoir un manifeste contenant une ligne sous la forme Main-Class:classname qui définit la classe avec la méthode principale qui sert de point de départ à notre application.

4. Pour corriger l'erreur ci-dessus, nous devrons mettre à jour le fichier JAR pour inclure un attribut manifeste avec notre code. Créons un fichier MANIFEST.MF.

vim MANIFEST.MF

Copiez et collez la ligne suivante dans le fichier MANIFEST.MF.

Main-Class:  TecmintApp

Enregistrez le fichier et ajoutons le fichier MANIFEST.MF à notre tecmintapp.jar à l'aide de la commande suivante.

jar cvmf MANIFEST.MF tecmintapp.jar TecmintApp.class

5. Enfin, lorsque nous avons exécuté à nouveau le fichier JAR, il devrait produire le résultat attendu, comme indiqué dans la sortie.

java -jar tecmintapp.jar

Just executed TecmintApp!

Pour plus d'informations, consultez les pages de manuel des commandes java, javac et jar.

man java
man javac
man jar

C'est tout! Dans ce court article, nous avons expliqué comment créer une application Java simple et la regrouper dans un fichier JAR, et démontré comment exécuter un fichier .jar à partir du terminal. Si vous avez des questions ou des idées supplémentaires à partager, utilisez le formulaire de commentaires ci-dessous.