Come risolvere "Esecuzione del plug -in non coperta dalla configurazione del ciclo di vita" per le build di maven di molla Maven

StackOverflow https://stackoverflow.com/questions/6352208

Domanda

Sto cercando di lavorare con Dati di primavera e neo4j. Ho iniziato cercando di seguire questa guida collegato al sito principale. In particolare ho basato il mio pom.xml dal "Ciao mondo!" File di esempio. Ecco un ceppo dal mio pom.xml per il plug -in che sta causando i problemi ...

<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'errore che sto vedendo è:

 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)

Sto eseguendo Eclipse 3.6.2 e M2E 0.13. Non sono un esperto di maven, quindi per favore sii molto esplicativo nelle tue risposte, se possibile.

Ho anche provato M2E 1.0.0 attraverso Questo sito di aggiornamento e ottenere ancora lo stesso errore.

È stato utile?

Soluzione

Nel mio caso di un problema simile, invece di usare il suggerimento di Andrew per la correzione, ha funzionato semplicemente dopo aver introdotto u003CpluginManagement> Tag al pom.xml in questione. Sembra che quell'errore sia dovuto a una mancanzau003CpluginManagement> etichetta. Quindi, al fine di evitare le eccezioni in Eclipse, è necessario semplicemente racchiudere tutti i tag del plug -in all'interno di un u003CpluginManagement> tag, così:

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

Una volta che questa struttura è in atto, l'errore scompare.

Altri suggerimenti

Che casino. Non ricordo dove l'ho trovato, ma ho dovuto aggiungere quanto segue per far sì che M2ECLIPSE fosse felice. Ancora più triste è che non è esattamente facile capire perché questo tag sia necessario.

<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>

Ci sono stati numerosi altri problemi con il plug-in M2ECLIPSE che semplicemente non ha funzionato con i dati di primavera. Alla fine ho disabilitato m2eclipse a favore del Plug-in Apache Eclipse.

Soluzione suggerita da Documentazione Eclipse M2E:

  1. Uso soluzione rapida sull'errore in pom.xml e seleziona Permanently mark goal run in pom.xml as ignored in Eclipse build - Questo genererà il codice della caldaia richiesto per te.

  2. Per istruire Eclipse a eseguire il plug -in durante la build - basta sostituire il <ignore/> tagga con <execute/> Tag nella configurazione generata:

    <action>
        <execute/>
    </action>
    

    In alternativa, puoi istruire Eclipse a eseguire anche il plug -in su build incrementali:

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

In Eclipse Luna 4.4.0, puoi scegliere di ignorare questo errore nelle preferenze

Finestra > Preferenze > Esperto di > Errori/avvertimenti > Esecuzione del plugin non coperta dalla configurazione del ciclo di vita. Selezionare Ignora / avviso / errore come vuoi.

Inoltre, nella correzione rapida (CTRL + 1) per questo errore, dà un'opzione per contrassegnare il goal come ignorato nella build Eclipse in Eclipse Preferences (Experimental)

Questo è un modo più pulito, in quanto non modifica il tuo pom.xml.

Dovrai fare un Esperto di > Progetto di aggiornamento Per correggere lo stesso errore anche in qualsiasi altro progetto.


In STS (Spring-Tool-Suite), puoi scegliere di ignorare questo errore nelle preferenze

Finestra> Preferenze> Maven> Errori/Avvertenze> Esecuzione del plug-in non coperta dalla configurazione del ciclo di vita. Seleziona Ignora / Avviso / Errore come desiderio. Quindi. Fare clic con il tasto destro sul progetto Fare clic su Maven e aggiornare il progetto, quindi l'errore sarà sparito.

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

Per risolvere alcuni problemi di lunga data, M2E 1.0 richiede istruzioni esplicite cosa fare con tutti i plugin Maven legati a fasi "interessanti" del ciclo di vita della costruzione del progetto. Chiamiamo queste istruzioni "Mappatura del ciclo di vita della build di progetto" o semplicemente "mappatura del ciclo di vita" perché definiscono come le informazioni M2E maps dal file POM.xml del progetto all'area di lavoro di Eclipse Configurazione del progetto durante la build dell'area di lavoro Eclipse.

La configurazione della mappatura del ciclo di vita della build di progetto può essere specificata in Project Pom.xml, contribuito dai plugin Eclipse e esiste anche una configurazione predefinita per alcuni plugin Maven comunemente usati spediti con M2E. Chiamiamo queste "fonti di metadati di mappatura del ciclo di vita". M2E creerà un marcatore di errore come di seguito per tutte le esecuzioni di plug -in che non hanno una mappatura del ciclo di vita in nessuna delle fonti di metadati di mappatura.

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 abbina le esecuzioni di plug -in alle azioni utilizzando la combinazione di groupid plug -in, artifactid, intervallo di versione e obiettivo. Esistono tre azioni di base che M2E può essere istruita a fare con un'esecuzione del plug -in - ignorare, eseguire e delegare a un progetto configuratore.

M2E 0.13 Introduci a Connettori M2E e Place M2E Per estendere le funzionalità M2E. È come il vecchio repository M2E-Extras.

Puoi accedere al mercato M2E dalle preferenze: Preferenze> Maven> Discovery> Catalogo aperto. Installazione Integrazione WTP Risolto la maggior parte dei problemi di plug -in per me.

Modificare le preferenze di Maven per l'esecuzione del plug -in dall'errore da ignorare

Si noti che la versione 1.7.0 M2ECLIPSE (M2E) disponibile nel treno di rilascio di eclipse neon di oggi supporta una nuova sintassi per la specifica dei metadati di mappatura del ciclo di vita. Di conseguenza caldaia come questa (qui stiamo dicendo a M2E di ignorare l'obiettivo):

<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>

Può essere sostituito con una singola riga nel nodo di esecuzione del plug -in:

<?m2e ignore?>

enter image description here

Vedere il note di rilascio per dettagli.

Come addendum alle risposte precedenti: c'è una soluzione alternativa che ho appena scoperto se non puoi o non vuoi aggiungere tutta questa piastra caldaia al tuo POM POM. Se guardi nella seguente posizione:

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

Dovresti trovare un file chiamato lifecycle-mapping-metadata.xml dove puoi apportare le stesse modifiche descritte nelle altre risposte e in Esecuzione del plug -in M2E non coperta.

Ho avuto lo stesso problema con Eclipse V3.7 (Indigo) e M2ECLIPSE come plug -in Maven. L'errore è stato facilmente risolto affermando esplicitamente la fase di esecuzione all'interno della definizione del plug -in. Quindi il mio POM sembra questo:

<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>
        ...
  1. Vai a Help> Installa nuovo software ...
  2. Usa questo repository software

    Assicurarsi che "contatta tutti i siti di aggiornamento durante l'installazione per trovare il software richiesto".

  3. Installa il configuratore AJDT M2E

Fonte: Aggiornamento dell'integrazione Maven per Springsource Tool Suite 2.8.0 (Andrew Eisenberg)

Questo dovrebbe installare automaticamente adjt se non lo si installa, ma in caso contrario, installare gli strumenti di sviluppo di aspetti (adjt) prima dal "sito di aggiornamento indaco" (secondo la versione Eclipse).

Maggiori informazioni su AspectJ Strumenti di sviluppo Sito.

Vai a workspace/rtc-ws/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xml Quindi crea lifecycle-mapping-metadata.xml File e incolla di seguito e ricarica la configurazione come di seguito

Se stai usando Eclipse 4.2 e hai problemi con la mappatura e non metterai il pasticcio nel tuo pom.xml Crea nuovo file lifecycle-mapping-metadata.xml configurarlo in Windows -> Preferences -> Lifecycle mapping (Non dimenticare i metadati di premi remoad workspace lifecycle dopo ogni modifica di questo file!). Ecco un esempio basato su eclipse/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>

Ho avuto lo stesso problema con Indigo e un progetto che deve generare fonti Java da XSD.
Potrei risolverlo fornendo la mappatura del ciclo di vita mancante, come descritto questa pagina

L'ho risolto seguendo il post sul blog Aggiornamento dell'integrazione Maven per Springsource Tool Suite 2.8.0.

Segui i consigli sulla sezione chiamata "Uh oh ... i miei progetti non costruiscono più"

Uso M2E 0.12, ultima versione da Sonatype.

Questo errore avviene anche su neon a causa del connettore M2E mancante. SOLUZIONE: errore del mouse e selezionare - Scopri nuovi connettori M2E.

Installerà un nuovo connettore e questo è tutto.

Stavo usando

<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>

e lo ha cambiato in

<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>

E l'errore è andato via. Forse non è raccomandato di associare un'esecuzione alla fase del compositore test, quindi trovare una fase diversa potrebbe essere una soluzione alternativa all'aggiunta della configurazione di gestione del plug-in al ciclo di vita Maven.

Dove trova wtp:

Mouse Down on <Pluin> in pom.xml e "scopri nuovi connettori M2E".

Li ho installati tutti ciò che sono controllati predefiniti e funziona.

Ho avuto lo stesso identico problema dopo l'aggiornamento di M2E e lo ho risolto reinstallando l'integrazione di Maven per Eclipse WTP.

A quanto pare, l'ho disinstallato cercando di aggiornare M2E dalla versione 0.x a 1.x

Ho avuto questo problema oggi. Stavo usando STS 3.4 con il suo Roo in bundle 1.2.4. Successivamente ho provato con Eclipse Kepler e Roo 1.2.5, stesso errore.

Ho cambiato il mio tag pOM.xml aggiungendo tag plugintemplates dopo la build e prima della dichiarazione dei plug -in ma non ho funzionato.

Cosa ha reso la magia per me:

  • Utilizzando JDK 1.7.0_51
  • Scaricato Roo 1.2.5
  • Scaricato Maven 3.2.1 (in caso contrario, quando esegui "Esegui Eclipse" Questo errore appare "Errore = 2, nessun file o directory")
  • Directory configurate JDK, Roo e Maven Bin sul mio percorso:

    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

Ha fatto la mia configurazione come segue: (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

Aperto con Eclipse (niente di STS, ma immagino che funzioni): Importa -> progetti esistenti nell'area di lavoro

Ho riscontrato esattamente lo stesso problema con il plug -in parsimonia Maven. Ecco la mia soluzione che non richiede necessità di rovinare il tuo pom.xml:

  1. Usa la riga di comando Maven Utility MVN

    MVN Eclipse: Eclipse

    Per creare un progetto Eclipse

  2. Importa il progetto in Eclipse. Ricordati di usare

    File> Importa> Generale> Progetti esistenti nell'area di lavoro

    Per aggiungere il progetto all'area di lavoro.

Questo dovrebbe risolvere il problema.

Invece di rovinare il tuo file pom, ti suggerirei di andare a Mostra la vistaMarcatori In Eclipse, selezionare ed eliminare i marcatori di errori appropriati.

Se stai usando Eclipse Juno, potrebbe essere il problema di Integrazione Maven per Eclipse WTP . Quindi installa lo stesso da Eclipse Market Place.

In Eclipse IDE Help >> Eclipse Market Place >> Digita la query WTP e mostrerà l'integrazione di Maven per Eclipse WTP per Juno, installalo e aggiorna le dipendenze Maven e divertiti

Questa risposta è altrettanto buona la risposta di gestione del plug-in sopra (vale a dire è terribile).

Basta eliminare tutto il codice XML offensivo nel POM.

Fatto. Risolto il problema (tranne per il fatto che hai appena rotto la configurazione Maven ...).

Gli sviluppatori dovrebbero fare molta attenzione a comprendere i tag di gestione del plug-in prima di fare una di queste soluzioni. Basta schiaffeggiare la gestione dei plug-in attorno ai plugin è probabile che romperà la build Maven per tutti gli altri solo per far funzionare l'eclissi.

Puoi sopprimere questo errore in Eclipse: finestra -> Preferenze -> Maven -> Errore/Avvertenze

Mutevole

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

in

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

Ho risolto il problema per me.

Ho seguito il suggerimento della GUI per trovare qualsiasi connettore, quindi ho trovato AspectJ Integrator del team Springsource. Dopo l'installazione è stato risolto.

L'ho incontrato usando Eclipse V4.3 (Kepler) e Maven 3.1.

La soluzione è utilizzare un JDK e non un JRE per il tuo progetto Eclipse. Assicurati di provare maven clean E prova da Eclipse solo per scaricare i file jar mancanti.

Per me questo è stato causato dalle classi di aspetti. Non sono riuscito a trovare un plug -in sotto Discovery che potesse aiutare. Quindi, l'ho risolto copiando i file org.maven.ide.eclipse.ajdt, sotto cartelle plug -in e funzionalità, di un'installazione STS esistente.

Lo so, approccio molto maleducato.

Ho ricevuto lo stesso errore. Dopo averlo fatto è andato via.

  1. Fare clic con il tasto destro sul progetto.
  2. Seleziona Maven> Aggiorna progetto ...
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top