Dans un projet Java, chaque fichier jar exécutable contient une méthode principale. Habituellement, il est placé au point de départ de l’application. Pour exécuter une méthode principale à l'aide d'un fichier jar auto-exécutable, nous devons disposer d'un fichier manifeste approprié et l'envelopper avec notre projet au bon emplacement. Ces fichiers ont un attribut manifeste principal qui est utilisé pour définir le chemin d'accès à la classe ayant la méthode principale.
Parfois, nous avons un fichier jar auto-exécutable, et lorsque nous essayons d'exécuter le projet, il renvoie le message d'erreur suivant :
Unable to execute jar- file: 'no main manifest attribute.'
Le message d'erreur ci-dessus est généré en raison d'une entrée manquante de Main-Class dans le fichier MANIFEST.MF.
Vous pouvez rencontrer ce problème dans n'importe quel système basé sur la configuration. Java projet. Discutons de ses solutions :
Solution:
Comprenons ses solutions dans différents projets :
Maven
Dans Maven Project, ce problème peut survenir en raison de l’entrée manquante de Main-Class dans le fichier MANIFEST.MF. Pour résoudre ce problème, nous pouvons le définir dans notre fichier pom.xml en mettant manuellement un plugin-maven-jar dans pom.xml.
org.apache.maven.plugins maven-jar-plugin 3.1.0 com.javatpoint.AppMain
Dans le code ci-dessus, com.javatpoint.AppMain est notre nom complet de la classe principale. Vous devez remplacer le nom complet en fonction de votre chemin de classe. Pour copier le nom complet, cliquez avec le bouton droit sur le package contenant la classe principale et sélectionnez Copier le nom complet .
Graduation
Si vous obtenez cette erreur dans votre projet Gradle, vous pouvez la résoudre en mettant les entrées suivantes dans votre build.gradle déposer:
plugins { id 'java' } jar { manifest { attributes( 'Main-Class': 'com.javatpoint.AppMain' ) } }
Application de démarrage de printemps
Parfois, cette erreur peut survenir dans votre Botte de printemps projet. Il est facile de résoudre cette erreur dans le projet Spring Boot. Pour corriger cette erreur dans le projet SB, placez la dépendance maven-plugin sous la balise dans le fichier pom.xml.
org.springframework.boot spring-boot-maven-plugin 4.0.1
Cause première de l’erreur d’absence d’attribut de manifeste principal
L'erreur « absence de manifeste principal » est généralement provoquée si vous avez modifié le fichier MANIFEST.MF situé dans le dossier META-INF. Par défaut, il contient l'entrée suivante :
Manifest-Version: 1.0 Built-By: alien Build-Jdk: 1.8.0 Created-By: Maven Integration for Eclipse
Où,
Version manifeste est la version du fichier manifeste.
Construit par est le nom de votre PC.
Construire-Jdk est la version du JDK installée sur votre machine.
Créé par est le nom du plugin utilisé dans l'EDI.
Lorsque nous exécutons le projet, il recherchera la classe principale dans le fichier MANIFEST.MF. Il affichera le message d'erreur « Impossible d'exécuter le fichier jar » s'il ne trouve pas l'entrée. Lorsque nous exécutons les solutions ci-dessus, l'entrée de classe sera automatiquement mise à jour dans le fichier manifeste du projet comme suit :
Manifest-Version: 1.0 Built-By: alien Build-Jdk: 1.8.0 Created-By: Maven Integration for Eclipse Main-Class: com.javatpoint.AppMain