web-dev-qa-db-fra.com

erreur m2e dans MavenArchiver.getManifest ()

Je vois une erreur dans mon STS et je ne suis pas sûr de savoir comment le déboguer. En cherchant, je ne vois que des références vagues à l'erreur et aucune solution.

L'erreur est:

org.Apache.maven.archiver.MavenArchiver.getManifest(org.Apache.maven.project.MavenProject, org.Apache.maven.archiver.MavenArchiveConfiguration)pom.xml/<maven projectName> line 1 Problème de configuration Maven

Question : Quelqu'un peut-il donner des suggestions sur la manière d'obtenir plus d'informations sur le problème afin de le déboguer davantage ou sur des solutions possibles?

Peut-être un peu plus de contexte sur la fonctionnalité de la méthode. Le javadoc associé à la méthode MavenArchiver.getManifest() n'est pas très détaillé et je ne vois aucune trace de pile. J'ai essayé plusieurs mises à jour et mises à jour du projet et des projets associés, y compris le nettoyage de mon dépôt M2 local.

Info STS :

  • Version: 3.7.3.LELEASE
  • Numéro de construction: 201602250940
  • Plate-forme: Eclipse Mars.2 (4.5.2)

m2e info :

  • Version: 1.6.2.20150902-0002
90
scottmf

J'ai rencontré le même problème après avoir mis à jour le maven-jar-plugin vers sa dernière version (au moment de l'écriture), 3.0.2.
Eclipse 4.5.2 a commencé à marquer le fichier pom.xml avec l'erreur org.Apache.maven.archiver.MavenArchiver.getManifest et un Maven> Mettre à jour le projet .. ne le corrigerait pas.

Solution facile: rétrograder à la version 2.6
En effet, une solution possible consiste à revenir à la version 2.6, une nouvelle mise à jour du projet supprimerait alors toute erreur. Cependant, c’est le scénario idéal not et une meilleure solution est possible: mettez à jour les extensions m2e (intégration Eclipse Maven).

Meilleure solution: mettre à jour les extensions Eclipse m2e
Depuis Aide> Installer un nouveau logiciel .., ajoutez un nouveau référentiel (via l'option Ajouter ..), en pointant sur l'une des URL suivantes. : 

  • https://otto.takari.io/content/sites/m2e.extras/m2Eclipse-mavenarchiver/0.17.2/N/LATEST/ ou 

  • http://repo1.maven.org/maven2/.m2e/connectors/m2Eclipse-mavenarchiver/0.17.2/N/LATEST/

Suivez ensuite l'assistant de mise à jour comme d'habitude. Eclipse nécessiterait alors un redémarrage. Ensuite, un Update Project .. supplémentaire sur le projet Maven concerné supprime toute erreur et votre version Maven peut alors bénéficier de la dernière version de maven-jar-plugin.


Notes complémentaires
La raison de ce problème est que, à partir de la version 3.0.0 on, le composant concerné, le maven-archiver et le plexus-archiver associé ont été mis à niveau vers des versions plus récentes, rompant les usages internes (via les réflexions) du m2e intégration dans Eclipse. La seule solution consiste alors à mettre à jour correctement Eclipse, comme décrit ci-dessus.
Remarque: si Eclipse signalait initialement des erreurs, la compilation Maven (par exemple, en ligne de commande) continuait de fonctionner parfaitement, mais ce problème est uniquement lié à l'intégration Eclipse-Maven, c'est-à-dire à l'EDI.

177
A_Di-Matteo

J'ai trouvé ma réponse! J'ai cherché dans le pom pour les plugins qui ont une dépendance sur le maven-archiver et trouvé le maven-jar-plugin fait. Il utilisait la dernière version 3.0.0. Lorsque j'ai rétrogradé à la version 2.6, le problème semble être résolu :-)

14
scottmf

J'ai eu exactement le même problème. Mon environnement était:

  • Spring STS 3.7.3.LELEASE
  • Numéro de construction: 201602250940
  • Plate-forme: Eclipse Mars.2 (4.5.2)

Les symptômes des problèmes étaient:

  1. Il y avait un drapeau d'erreur rouge sur mon fichier PM. et la description de l'erreur était telle que décrite dans la question initiale posée ici.
  2. Il y avait des problèmes de compilation connus dans plusieurs fichiers Java du projet, mais Eclipse ne les affichait toujours pas signalés comme erreur dans le volet de l'éditeur, ni dans l'arborescence de l'Explorateur de projet à gauche.

La solution (décrite ci-dessus) concernant la mise à jour des extensions m2e a fonctionné pour moi.

Mieux solution (ma recommandation):

11
Ravi Rajamiyer

J'ai eu le même problème avec un projet de démarrage de printemps. la solution consistait à déclasser le jar maven-jar-plugin de 3.2 à 2.6 Il me suffisait d'ajouter ceci au projet pom:

<properties>        
    <maven-jar-plugin.version>2.6</maven-jar-plugin.version>
</properties>
10
Ala Messaoudi

J'avais également fait face au même problème et il a été résolu en modifiant la version de 3.2.0 en 2.6 comme indiqué ci-dessous, extrait de pom.xml

<plugin>
    <groupId>org.Apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.6</version>
    <configuration>
        <warSourceDirectory>src/main/webapp</warSourceDirectory>
        <warName>Spring4MVC</warName>
        <failOnMissingWebXml>false</failOnMissingWebXml>
    </configuration>
</plugin>
6
Vaibhav Sharma

J'ai eu le même problème avec un projet de démarrage de printemps. La solution consistait à rétrograder la version de dépendance spring-boot-starter-parent de 2.0.0.RELEASE à 1.5.10.RELEASE (vous pouvez passer à n'importe quelle version stable).

de:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.0.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

à

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.10.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
6
Saurav

Mettez à niveau vos extensions m2e au lieu de rétrograder.

Dans Aide> Installer un nouveau logiciel .., ajoutez un nouveau référentiel (via l'option Ajouter ..).

Spécifiez le nom de votre plugin et ajoutez chemin http://repo1.maven.org/maven2/.m2e/connectors/m2Eclipse-mavenarchiver/0.17.2/N/LATEST/

une fois l'installation terminée, redémarrez Eclipse et mettez à jour votre projet.

1
VENKAT S

J'ai également fait face aux mêmes problèmes, changer de version de 2.0.0.RELEASE à 1.5.10.RELEASE a fonctionné pour moi, merci de l'essayer avant de rétrograder la version maven.

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.10.RELEASE</version>
</parent>
<dependencies>
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
 </dependency>  
</dependencies>
1

Utilisez les étapes données dans ce link . Cela a fonctionné pour moi.

Étape 1: Faites un clic droit sur votre projet dans Eclipse

Étape 2 Cliquez sur Propriétés

Étape 3 Sélectionnez Maven dans la liste de gauche.

Étape 4 Vous remarquerez "pom.xml" dans la zone de texte Profils actifs Maven du côté droit. Effacez-le et cliquez sur Appliquer.

Étape 5 - Exécuter en tant que -> Maven clean -> Maven Install

J'espère que ça aide!

0
Mants