Comment résoudre «l'exécution du plugin non couverte par la configuration du cycle de vie» pour les versions Spring Data Maven


907

J'essaie de travailler avec Spring Data et Neo4j . J'ai commencé par essayer de suivre ce guide lié par le site principal. En particulier, j'ai basé mon pom.xml sur "Hello, World!" fichier d'exemple . Voici un extrait de mon pom.xml pour le plugin qui cause les problèmes ...

<plugin>
<!-- Required to resolve aspectj-enhanced class features -->
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>aspectj-maven-plugin</artifactId>
    <version>1.0</version>
    <configuration>
        <outxml>true</outxml>
        <aspectLibraries>
            <aspectLibrary>
                <groupId>org.springframework</groupId>
                <artifactId>spring-aspects</artifactId>
            </aspectLibrary>
            <aspectLibrary>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-neo4j</artifactId>
            </aspectLibrary>
        </aspectLibraries>
        <source>1.6</source>
        <target>1.6</target>
    </configuration>
    <executions>
        <!-- ERROR HERE IN ECLIPSE SEE BELOW FOR FULL MESSAGE -->
        <execution>
            <goals>
                <goal>compile</goal>
                <goal>test-compile</goal>
            </goals>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjtools</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
    </dependencies>
</plugin>

L'erreur que je vois est:

 Multiple annotations found at this line:
    - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (execution: default, phase: process-classes)
    - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:test-compile (execution: default, phase: process-classes)

J'utilise Eclipse 3.6.2 et m2e 0.13. Je ne suis pas un expert Maven, veuillez donc être très explicatif dans vos réponses si possible.

J'ai également essayé m2e 1.0.0 via ce site de mise à jour et j'obtiens toujours la même erreur.


1
Quelle version de maven utilisez-vous? Spring Data (Graph) a utilisé maven2 pour son processus de construction (principalement en raison de problèmes de docbook-plugin). (BTW. Les projets de données du printemps migreront bientôt vers gradle :)
Michael Hunger

1
Pour eclipse, j'utilise le maven intégré 3.0.3 (tout ce qui vient avec m2e). Est-ce que tout Spring passe à Gradle ou juste Spring Data?
Andrew White

1
Oubliez cela de travailler avec Groovy. Quel cauchemard. Je ne peux même plus utiliser Indigo à cause de cette parodie.
Spencer Kormos

Quelqu'un peut-il partager un lien vers l'endroit où ce nouveau mode de fonctionnement pour M2E est documenté?
HDave

Réponses:


1337

Dans mon cas d'un problème similaire, au lieu d'utiliser la suggestion d'Andrew pour le correctif, cela a fonctionné simplement après avoir introduit la balise <pluginManagement> dans le pom.xml en question. Il semble que cette erreur soit due à une balise <pluginManagement> manquante. Donc, afin d'éviter les exceptions dans Eclipse, il faut simplement enfermer toutes les balises de plugin dans une balise <pluginManagement> , comme ceci:

<build>
    <pluginManagement>
        <plugins>
            <plugin> ... </plugin>
            <plugin> ... </plugin>
                  ....
        </plugins>
    </pluginManagement>
</build>

Une fois cette structure en place, l'erreur disparaît.


29
Ça marche aussi pour moi, mais quelqu'un peut-il expliquer pourquoi?
Andrew Swan

89
@Andrew Je pense que cela fonctionne parce que m2e ne cherche pas de plugins pluginManagement, mais seulement build/plugins. Dans le monde Maven, il y a une différence entre les deux - le premier définit "s'il vous arrive d'utiliser ce plugin, voici la configuration à utiliser", tandis que le dernier indique "utiliser ce plugin". Voir cet article et ses deux premières réponses.
GreenGiant

30
Je suis d'accord avec @GreenGiant. J'ai essayé cette solution mais elle interrompt alors la compilation car le plugin aspectj n'est pas appelé avant la compilation.
Pierre

25
Pas valable pour moi. Corrige l'erreur dans Eclipse, mais interrompt la génération de code WS avec <goal> wsimport à l'aide de jaxws-maven-plugin. "Marquer de façon permanente l'objectif wsimport dans pom.xml comme ignoré dans la construction Eclipse" semble ajouter plus de choses dans pom.xml et le corriger pour m2e.
nevhewtom

33
Errrr ... Il semble que cela ne fonctionne que parce qu'il désactive tous les plugins en question ..... Les retirer complètement fonctionnerait également, mais je suppose qu'ils sont là pour une raison? Les développeurs doivent s'assurer qu'ils comprennent parfaitement ce qu'ils font avec maven avant d'utiliser ce "correctif".
Michael Haefele

414

Quel bordel. Je ne me souviens pas où j'ai trouvé cela, mais j'ai dû ajouter ce qui suit pour que M2Eclipse soit heureux. Plus triste encore, il n'est pas exactement facile de comprendre pourquoi cette balise est nécessaire.

<build>
      ... various plugins ...

      <pluginManagement>
        <plugins>
            <!--This plugin's configuration is used to store Eclipse 
                m2e settings only. It has no influence on the Maven build itself. -->
            <plugin>
                <groupId>org.eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>aspectj-maven-plugin</artifactId>
                                    <versionRange>[1.0,)</versionRange>
                                    <goals>
                                        <goal>test-compile</goal>
                                        <goal>compile</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <execute />
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

Il y avait un certain nombre d'autres problèmes avec le plug-in M2Eclipse qui ne fonctionnaient tout simplement pas avec Spring Data. Au final, j'ai désactivé M2Eclipse au profit du plug-in Apache Eclipse .


3
Quel référentiel de plugins héberge le plugin org.eclipse.m2e: lifecycle-mapping?
Nathan Feger

6
Si votre éclipse ne peut pas trouver org.eclipse.m2e: plugin de cartographie du cycle de vie, c'est parce que vous avez mis l'extrait ci-dessus dans la mauvaise liste de plugins dans le pom, il doit aller sous pluginManagement
mkraemerx

65
note: m2e 1.x peut le faire automatiquement comme solution rapide depuis la vue Problèmes
Brad Cupit

7
Merci: m2e m'a proposé un 'quickfix' pour un plugin qu'il n'a pas reconnu, qui a généré tout ce qui précède sauf avec <ignore /> au lieu de <execute />. Il n'offrait pas l'option <execute />, qui fonctionne! Exaspérant!
laher

10
Oui, les choses <pluginmanagement> passent sous <build>. On pourrait penser que la page m2 mentionnerait cette bagatelle.
jjohn

217

Dans Eclipse Luna 4.4.0, vous pouvez choisir d'ignorer cette erreur dans les préférences

Fenêtre > Préférences > Maven > Erreurs / Avertissements > L' exécution du plugin n'est pas couverte par la configuration du cycle de vie . Sélectionnez Ignorer / Avertissement / Erreur comme vous le souhaitez.

De plus, dans le correctif rapide (Ctrl + 1) pour cette erreur, il donne une option pour marquer l'objectif comme ignoré dans la génération Eclipse dans les préférences Eclipse (expérimental)

C'est une manière plus propre, car elle ne modifie pas votre pom.xml.

Vous devrez également faire un projet Maven > Update pour corriger la même erreur dans tout autre projet.


Dans STS (Spring-tool-suite), vous pouvez choisir d'ignorer cette erreur dans les préférences

Fenêtre> Préférences> Maven> Erreurs / Avertissements> L'exécution du plugin n'est pas couverte par la configuration du cycle de vie. Sélectionnez Ignorer / Avertissement / Erreur comme votre souhait. Alors. Cliquez avec le bouton droit sur le projet, cliquez sur Maven et mettez à jour le projet, puis l'erreur disparaîtra.


Parfait. A parfaitement fonctionné pour moi. Merci d'avoir partagé.
Ajay Kumar

Je l'ai également utilisé dans eclipse 2020-03, je ne sais pas pourquoi l'erreur est survenue cette fois quand j'ai importé le projet, je l'ai fait au moins 4 fois sur d'autres ordinateurs sans aucun problème. Je suis nouveau dans l'éclipse, je dois dire que je comprends toujours comment il construit les choses, lesquelles d'entre elles et quand :-D
Funder

C'est la bonne réponse. Merci. J'utilise Red Hat CodeReady Studio qui est un outil basé sur Eclipse.
Igor Vuković

Un épargnant de jour .. :) Cette solution a fonctionné pour moi.
Jeetendra

Comment est-ce une solution? Au lieu d'Eclipse se plaindre qu'il ne génère pas mon code source (en signalant une ligne dans POM.XML avec un X rouge et le message d'erreur "L'exécution du plugin n'est pas couverte par la configuration du cycle de vie"), avec cette modification, Eclipse ne génère tout simplement pas mon code source.
mbmast

212

Solution suggérée à partir de la documentation Eclipse m2e :

  1. Utilisez la correction rapide de l'erreur dans pom.xml et sélectionnez Permanently mark goal run in pom.xml as ignored in Eclipse build- cela générera le code passe-partout requis pour vous.

  2. Pour demander à Eclipse d'exécuter votre plug-in pendant la construction - remplacez simplement la <ignore/>balise par la <execute/>balise dans la configuration générée:

    <action>
        <execute/>
    </action>

    Alternativement, vous pouvez également demander à Eclipse d'exécuter le plug-in sur les versions incrémentielles:

    <action>
        <execute>
            <runOnIncremental>true</runOnIncremental>
        </execute >
    </action>

6
Vous pouvez également ajouter <runOnIncremental>false|true</runOnIncremental>à l'intérieur de la balise execute, pour que eclipse appelle ce plugin maven sur les versions incrémentielles.
Matthias B

4
Cette solution a également fonctionné pour moi, mais il n'a pas été nécessaire d'exécuter l'étape 2) de la solution de contournement proposée.
Valerio Schiavoni

7
Si vous ne les marquez pas comme "exécuter", la construction eclipse ne lancera pas ces exécutions de plugin, mais cela pourrait aussi fonctionner.
mrod

Notez que vous pouvez également l'ajouter globalement à Eclipse avec Permanently mark goal run in eclipse preferenceset changer <ignore> en <execute> dans les préférences Eclipse> Maven> Mappages du cycle de vie> Ouvrir les métadonnées des mappages du cycle de vie de l'espace de travail .
PhoneixS

2
Merci, c'est la vraie solution. L'ajout de la balise <pluginManagement> désactive uniquement le plugin.
user3804769

111

Voir https://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.html .

Pour résoudre certains problèmes de longue date, m2e 1.0 nécessite des instructions explicites sur ce qu'il faut faire avec tous les plugins Maven liés aux phases "intéressantes" du cycle de vie de la construction du projet. Nous appelons ces instructions «cartographie du cycle de vie de la construction du projet» ou simplement «cartographie du cycle de vie» car elles définissent la façon dont m2e mappe les informations du fichier pom.xml du projet à la configuration et au comportement du projet de l'espace de travail Eclipse pendant la génération de l'espace de travail Eclipse.

La configuration du mappage du cycle de vie de la construction de projet peut être spécifiée dans le projet pom.xml, fournie par les plugins Eclipse et il existe également une configuration par défaut pour certains plugins Maven couramment utilisés livrés avec m2e. Nous appelons ces «sources de métadonnées de cartographie du cycle de vie». m2e créera un marqueur d'erreur comme ci-dessous pour toutes les exécutions de plug-in qui n'ont de mappage de cycle de vie dans aucune des sources de métadonnées de mappage.

Plugin execution not covered by lifecycle configuration:
org.apache.maven.plugins:maven-antrun-plugin:1.3:run
   (execution: generate-sources-input, phase: generate-sources)

m2e fait correspondre les exécutions de plug-in aux actions en utilisant une combinaison de plug-in groupId, artifactId, plage de versions et objectif. Il y a trois actions de base que m2e peut être chargé de faire avec une exécution de plugin - ignorer , exécuter et déléguer à un configurateur de projet .


93
C'est une explication du problème, pas une solution du moins pas une que je puisse prendre et travailler avec.
Andrew White

53
Vous avez donné la réponse vous-même, et elle se trouve sur la page à laquelle j'ai lié. Si vous trouvez qu'il est plus important de comprendre ce que signifie une erreur (et ensuite de trouver facilement comment la corriger) que de copier / coller aveuglément certains extraits. "La science sans conscience n'est que la ruine de l'âme." (François Rabelais)
Thomas Broyer

22
Désolé, mais je suis d'accord avec Andrew, utiliser ce plugin est beaucoup plus compliqué qu'il ne devrait l'être. Je commençais une nouvelle application et d'abord je pensais que le problème était mon fichier pow, juste quand j'essaye un pow que je sais que cela devrait fonctionner, j'ai vu que ce problème était causé par m2e. Désolé les gars, mais je pense qu'un bon fichier pow devrait juste fonctionner. Personne ne sait tout sur tout, je veux juste utiliser ce plugin, je ne veux pas savoir comment cela fonctionne.
Nei

15
Je dois admettre que cela a pris le chemin inverse du manifeste Maven (pour ainsi dire). Cela rend une chose simple si complexe que même en lisant tout à ce sujet, je ne peux pas la faire fonctionner la moitié du temps. Je préférerais de beaucoup, beaucoup mieux traiter avec une idiosyncrasie maven plutôt qu'avec des plugins qui ne se lient pas aux phases du cycle de vie quand ils sont censés le faire. S'il s'agit d'une solution provisoire, alors très bien ... mais faites-la réparer car elle est cassée maintenant.
Brill Pappin

13
Ce n'est pas Maven qui craque. Construit à partir du travail en ligne de commande. C'est le plugin m2eclipse (construit par le folk Eclipse) qui crache l'erreur. Je pense que le problème est que Maven a un cycle de vie de construction différent d'Eclipse, ils ont donc besoin de vous pour faire un mappage explicite. C'est vraiment dommage car cela signifie que vous ne pouvez apparemment jamais utiliser les POM tels qu'ils sont. Vous devez toujours ajouter cette cartographie ....
Stijn de Witt

30

m2e 0.13 présente les connecteurs m2e et la place de marché m2e pour étendre les fonctionnalités m2e. C'est comme l'ancien référentiel m2e-extras.

Vous pouvez accéder à la place de marché m2e à partir des préférences: Préférences> Maven> Découverte> Ouvrir le catalogue . L'installation de l' intégration WTP a résolu la plupart des problèmes de plugin pour moi.


1
Je ne vois pas "intégration WTP" dans la liste. Utilisez-vous un catalogue non par défaut?
Ed Staub

J'utilise le catalogue par défaut mais vous avez raison: je ne le vois plus.
noirbizarre

1
community.jboss.org/en/tools/blog/2011/06/23/… . Voir la mise à jour 2, de toute façon +1 pour le gros désordre
prusswan

2
en novembre 2011, m2e wtp peut être trouvé sur Eclipse Marketplace
stivlo

1
Cela fonctionne, ajoutez le site de mise à jour à partir de cette URL: download.jboss.org/jbosstools/updates/m2eclipse-wtp

27

Modifier les préférences Maven pour l'exécution du plug-in d'erreur à ignorer


2
Je recommande fortement que ce soit la nouvelle réponse acceptée. De nombreuses autres solutions empêcheront Maven d'exécuter le plugin entièrement pendant l'étape de construction spécifiée, ce qui est rarement ce que l'utilisateur souhaite. Il s'agit généralement d'un problème de configuration et non d'une erreur réelle. La valeur par défaut d'Eclipse doit être Avertissement, pas Erreur.
Nick Straguzzi

26

Notez que la version 1.7.0 M2Eclipse (m2e) disponible dans le train de versions Eclipse Neon d'aujourd'hui prend en charge une nouvelle syntaxe pour spécifier les métadonnées de mappage du cycle de vie. En conséquence, un passe-partout comme celui-ci (ici, nous disons à m2e d'ignorer l'objectif):

<pluginManagement>
  <plugins>
    <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
    <plugin>
      <groupId>org.eclipse.m2e</groupId>
      <artifactId>lifecycle-mapping</artifactId>
      <version>1.0.0</version>
      <configuration>
        <lifecycleMappingMetadata>
          <pluginExecutions>
            <pluginExecution>
              <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <versionRange>[1.5.0,)</versionRange>
                <goals>
                  <goal>exec</goal>
                </goals>
              </pluginExecutionFilter>
              <action>
                <ignore></ignore>
              </action>
            </pluginExecution>
          </pluginExecutions>
        </lifecycleMappingMetadata>
      </configuration>
    </plugin>
  </plugins>
</pluginManagement>

peut être remplacé par une seule ligne dans le nœud d'exécution du plugin:

<?m2e ignore?>

entrez la description de l'image ici

Voir les notes de version pour plus de détails.


21

En complément des réponses précédentes - il y a une solution de contournement que je viens de découvrir si vous ne pouvez pas ou ne voulez pas ajouter tout ce passe-partout à votre projet POM. Si vous regardez à l'emplacement suivant:

{Eclipse_folder}/plugins/org.eclipse.m2e.lifecyclemapping.defaults_{m2e_version}

Vous devriez trouver un fichier appelé lifecycle-mapping-metadata.xml où vous pouvez effectuer les mêmes modifications que celles décrites dans les autres réponses et dans l' exécution du plugin M2E non couvert .


6
Vous pouvez également modifier le WORKSPACE/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xmlfichier au lieu de jouer avec les bocaux. Plus de détails peuvent être trouvés sous Preferences > Maven > Lifecycle Mappings. De plus, si vous sélectionnez la solution rapide, "Mark goal xxxxx as ignored in Eclipse build in Eclipse preferences (experimental)"elle ajouterait toutes les modifications requises au fichier ci-dessus.
Nufail

17

J'ai eu le même problème avec Eclipse v3.7 (Indigo) et m2eclipse que mon plugin Maven. L'erreur a été facilement résolue en indiquant explicitement la phase d'exécution dans la définition du plugin. Donc mon pom ressemble à ceci:

<project>
    ...
    <build>
        ...
        <plugins>
            <plugin>

                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <version>1.0</version>

                <configuration>
                    <timestampFormat>yyyy-MM-dd_HH-mm-ss</timestampFormat>
                </configuration>

                <executions>
                    <execution>
                        *<phase>post-clean</phase>*
                        <goals>
                            <goal>create-timestamp</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        ...

10
  1. Allez dans Aide> Installer un nouveau logiciel ...
  2. Utilisez ceci référentiel de logiciels

    Assurez-vous que «Contactez tous les sites de mise à jour pendant l'installation pour trouver le logiciel requis» est coché.

  3. Installer le configurateur AJDT m2e

Source: mise à niveau de l'intégration Maven pour SpringSource Tool Suite 2.8.0 (Andrew Eisenberg)

Cela devrait installer automatiquement ADJT si vous ne l'avez pas installé, mais si ce n'est pas le cas, installez d'abord AspectJ Development Tools (ADJT) à partir du "site de mise à jour Indigo" (selon votre version d'Eclipse).

Plus d'informations sur le site AspectJ Development Tools .


j'ai essayé mais j'ai eu l'erreur: Missing requirement: Maven Integration for AJDT (Optional) 0.13.0.201107281640 (org.maven.ide.eclipse.ajdt.feature.feature.group 0.13.0.201107281640) requires 'org.eclipse.ajdt.feature.group 1.5.0' but it could not be found
Mahmoud Saleh

Msaleh, essayez ma réponse révisée
Hendy Irawan

9

Aller workspace/rtc-ws/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xmlensuite créer un lifecycle-mapping-metadata.xmlfichier et coller ci-dessous et recharger la configuration comme ci-dessous

Si vous utilisez Eclipse 4.2 et que vous rencontrez des problèmes de mappage et que vous ne mettez pas de désordre dans le vôtre, pom.xmlcréez un nouveau fichier, lifecycle-mapping-metadata.xmlconfigurez-le Windows -> Preferences -> Lifecycle mapping (n'oubliez pas d'appuyer sur Recharger les métadonnées de mappage du cycle de vie de l'espace de travail après chaque modification de ce fichier!). Voici un exemple basé sureclipse/plugins/org.eclipse.m2e.lifecyclemapping.defaults_1.2.0.20120903-1050.jar/lifecycle-mapping-metadata.xml

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
    <pluginExecutions>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <goals>
                    <goal>create-timestamp</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <goals>
                    <goal>list</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.zeroturnaround</groupId>
                <artifactId>jrebel-maven-plugin</artifactId>
                <goals>
                    <goal>generate</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>gwt-maven-plugin</artifactId>
                <goals>
                    <goal>compile</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <goals>
                    <goal>copy-dependencies</goal>
                    <goal>unpack</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <versionRange>[1.7,)</versionRange>
                <goals>
                    <goal>run</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>


        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <versionRange>[2.8,)</versionRange>
                <goals>
                    <goal>check</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

    </pluginExecutions>
</lifecycleMappingMetadata>

9

J'ai eu le même problème avec indigo et un projet qui doit générer des sources Java à partir de XSD.
Je pourrais y remédier en fournissant la cartographie du cycle de vie manquante, comme décrit sur cette page


8

Je l'ai corrigé après la publication du blog Mise à niveau de l'intégration de Maven pour SpringSource Tool Suite 2.8.0 .

Suivez les conseils de la section intitulée " Uh oh… mes projets ne se construisent plus ". Même lorsqu'il est destiné à SpringSource Tool Suite, je l'ai utilisé pour corriger une installation Eclipse régulière. Je n'ai pas eu à modifier mes fichiers pom.


1
La dernière ressource à revenir à une ancienne version de m2e ou à l'IDE que vous utilisez.
Chepech


5

Cette erreur se produit également sur le néon en raison du connecteur m2e manquant. Solution: survolez l'erreur et sélectionnez - Découvrez de nouveaux connecteurs M2E.

Il va installer un nouveau connecteur et c'est tout.


4

J'utilisais

<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
    <execution>
        <id>runSomeAntTasks</id>
        <phase>test-compile</phase>
        .
        .
        <goals>
            <goal>run</goal>
        </goals>
    </execution>
</executions>

et l'a changé en

<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
    <id>runSomeAntTasks</id>
    <phase>integration-test</phase>
        .
        .

        <goals>
            <goal>run</goal>
        </goals>
    </execution>
</executions>

et l'erreur a disparu. Il n'est peut-être pas recommandé de lier une exécution à la phase de compilation-test, donc trouver une phase différente pourrait être une solution alternative pour ajouter la configuration de gestion des plugins au cycle de vie de maven.


4

Où trouver WTP:

Passez la souris sur <plugin> dans pom.xml et 'Découvrez de nouveaux connecteurs m2e'.

Je les ai tous installés ce qui est vérifié par défaut et cela fonctionne.


4

J'ai eu exactement le même problème après la mise à jour de m2e et je l'ai résolu en réinstallant Maven Integration for Eclipse WTP.

En fin de compte, je l'ai désinstallé en essayant de mettre à jour m2e de la version 0.x à 1.x


3

J'ai eu ce problème aujourd'hui. J'utilisais STS 3.4 avec son Roo 1.2.4 fourni. Plus tard, j'ai essayé avec Eclipse Kepler et Roo 1.2.5, même erreur.

J'ai changé mon pom.xml en ajoutant la balise pluginTemplates après la construction et avant la déclaration des plugins mais cela n'a pas fonctionné.

Ce qui a fait la magie pour moi:

  • Utilisation de jdk 1.7.0_51
  • Téléchargé Roo 1.2.5
  • Téléchargé Maven 3.2.1 (sinon, lors de l'exécution de "exécuter l'éclipse", cette erreur apparaît "erreur = 2, aucun fichier ou répertoire")
  • Configurer les répertoires JDK, Roo et Maven bin sur mon PATH:

    export PATH = / opt / jdk1.7.0_51 / bin: $ PATH export PATH = / opt / spring-roo-1.2.5.RELEASE / bin: $ PATH export PATH = / opt / apache-maven-3.2.1 / bin : $ PATH

A fait ma configuration comme suit: ( http://docs.spring.io/spring-roo/reference/html/beginning.html )

$ mkdir hello 
$ cd hello
$ roo.sh
roo> project --topLevelPackage com.foo
roo> jpa setup --provider HIBERNATE --database HYPERSONIC_PERSISTENT 
roo> web mvc setup
roo> perform eclipse

Ouvrir avec Eclipse (rien de STS, mais je suppose que cela fonctionne): Importer -> Projets existants dans Workspace


2

J'ai rencontré exactement le même problème avec le plugin maven thrift. Voici ma solution qui ne nécessite pas de gâcher votre pom.xml:

  1. Utiliser la ligne de commande maven utilitaire mvn

    éclipse mvn: éclipse

    créer un projet d'éclipse

  2. Importez le projet dans Eclipse. N'oubliez pas d'utiliser

    Fichier> Importer> Général> Projets existants dans Workspace

    pour ajouter le projet dans votre espace de travail.

Cela devrait résoudre le problème.


2

Au lieu de gâcher votre fichier pom, je vous suggère d'aller dans Afficher la vueMarqueurs dans Eclipse, sélectionnez et supprimez les marqueurs des erreurs appropriées.


Grrr, je déteste devoir choisir entre deux maux. Ajouter des dizaines de lignes de déchets à pom = mauvais. Votre chemin = aussi mauvais, car il réapparaît (à chaque fois que vous enregistrez le pom) et je dois dire à tout le monde que c'est ok.
Iain

1

Si vous utilisez Eclipse Juno, cela pourrait être le problème de l' intégration Maven pour Eclipse WTP . Alors installez la même depuis Eclipse Market Place.

Dans l'aide Eclipse IDE >> Eclipse Market Place >> tapez la requête wtp et elle montrera l'intégration maven pour eclipse WTP pour Juno, installez-la et mettez à jour les dépendances maven et profitez


1

J'ai eu la même erreur. Après avoir fait ce qui suit, il est parti.

  1. Faites un clic droit sur le projet.
  2. Sélectionnez Maven> Mettre à jour le projet ...

1

Cette réponse est tout aussi bonne que la meilleure réponse de gestion des plugins ci-dessus (c'est-à-dire qu'elle est terrible).

Supprimez simplement tout le code xml incriminé dans le pom.

Terminé. Problème résolu (sauf que vous venez de casser votre configuration maven ...).

Les développeurs doivent être très prudents lorsqu'ils comprennent les balises de gestion des plugins avant de faire l'une de ces solutions. Le simple fait de gifler la gestion des plugins autour de vos plugins est aléatoire est susceptible de casser la construction de maven pour tout le monde juste pour que l'éclipse fonctionne.


1

vous pouvez supprimer cette erreur dans eclipse: Fenêtre -> Préférences -> Maven -> Erreur / Avertissements


1

En changeant

<artifactId>aspectj-maven-plugin</artifactId>
<version>1.2</version>

dans

<artifactId>aspectj-maven-plugin</artifactId>
<version>1.3</version>

résolu le problème pour moi.


1

J'ai rencontré cela en utilisant Eclipse v4.3 (Kepler) et Maven 3.1.

La solution consiste à utiliser un JDK et non un JRE pour votre projet Eclipse. Assurez-vous d'essayer maven cleanet de tester à partir d'Eclipse juste pour télécharger les fichiers JAR manquants.


1

J'ai suivi le conseil de l'interface graphique pour trouver un connecteur, puis j'ai trouvé AspectJ Integrator de l'équipe SpringSource. Après l'installation, il a été réglé.


0

Pour moi, cela était dû aux classes AspectJ. Je n'ai pas trouvé de plugin sous Discovery qui pourrait aider. J'ai donc résolu ce problème en copiant les fichiers org.maven.ide.eclipse.ajdt, sous les dossiers de plug-ins et de fonctionnalités, d'une installation STS existante.

Je sais, approche très grossière.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.