Création d'une application Java simple
Commençons par créer une application Java simple que nous empaqueterons dans un fichier JAR. Cela nous aidera à démontrer et, plus tard, à corriger l'erreur « no main manifest attribute ».
Créer la classe Java
Tout d'abord, créez un répertoire pour nos fichiers sources Java et naviguez-y :
cd ~/project/src/com/example
Maintenant, ouvrez l'éditeur et créez un nouveau fichier nommé HelloWorld.java dans ce répertoire :
- Cliquez sur l'icône "Explorer" dans la barre latérale gauche de l'IDE Web
- Naviguez vers
/home/labex/project/src/com/example
- Faites un clic droit et sélectionnez "Nouveau fichier"
- Nommez le fichier
HelloWorld.java
Ajoutez le code suivant au fichier HelloWorld.java :
package com.example;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Il s'agit d'un programme Java de base avec une méthode main qui affichera "Hello, World!" dans la console lors de l'exécution.
Compiler la classe Java
Maintenant, compilons notre classe Java. Retournez au terminal et naviguez vers le répertoire racine du projet :
cd ~/project
Compilez le fichier Java en utilisant la commande javac :
javac -d . src/com/example/HelloWorld.java
Cette commande compile le fichier source Java et place le fichier de classe compilé dans la structure de répertoire appropriée en fonction du nom du package.
Vous devriez maintenant avoir un fichier de classe compilé à ~/project/com/example/HelloWorld.class. Vous pouvez le vérifier avec :
ls -l com/example/
La sortie devrait afficher le fichier HelloWorld.class :
total 4
-rw-r--r-- 1 labex labex 426 [date] HelloWorld.class
Créer un fichier JAR de base sans manifeste
Maintenant, créons un fichier JAR sans spécifier de classe principale dans le manifeste. Cela nous permettra de reproduire l'erreur « no main manifest attribute » :
jar cf HelloWorld.jar com/
Cette commande crée un fichier JAR nommé HelloWorld.jar qui inclut le fichier de classe compilé.
Essayer d'exécuter le fichier JAR
Maintenant que nous avons créé notre fichier JAR, essayons de l'exécuter :
java -jar HelloWorld.jar
Vous verrez le message d'erreur :
no main manifest attribute, in HelloWorld.jar
C'est l'erreur que nous apprenons à corriger. La JVM ne peut pas trouver la classe principale à exécuter car nous ne l'avons pas spécifiée dans le manifeste du JAR.