Pregunta Cómo resolver "Ejecución de complementos no cubierta por la configuración del ciclo de vida" para Spring Data Maven Builds


Estoy tratando de trabajar con Spring Data y Neo4j. Empecé tratando de seguir esta guía vinculado por el sitio principal. En particular, basé mi pom.xml en el "¡Hola Mundo!" archivo de ejemplo. Aquí hay un recorte de mi pom.xml para el complemento que está causando los problemas ...

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

El error que estoy viendo es:

 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)

Estoy ejecutando Eclipse 3.6.2 y m2e 0.13. No soy un experto de Maven, así que por favor sea muy explicativo en sus respuestas si es posible.

También intenté m2e 1.0.0 vía este sitio de actualización y aún obtienes el mismo error.


771
2018-06-15 02:04


origen


Respuestas:


En mi caso de un problema similar, en lugar de utilizar la sugerencia de Andrew para la corrección, funcionó simplemente después de que introduje <pluginManagement> etiqueta al pom.xml en cuestión. Parece que ese error se debe a que falta una etiqueta <pluginManagement>. Entonces, para evitar las excepciones en Eclipse, parece que se necesita simplemente encerrar todas las etiquetas de complementos dentro de un <pluginManagement> etiqueta, como así:

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

Una vez que esta estructura está en su lugar, el error desaparece.


1109
2017-12-05 21:59



Que desastre. No recuerdo dónde encontré esto, pero tuve que agregar lo siguiente para que M2Eclipse fuera feliz. Aún más triste es que no es exactamente fácil entender por qué se necesita esta etiqueta.

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

Hubo varios otros problemas con el complemento M2Eclipse que simplemente no funcionaron con Spring Data. Al final deshabilité M2Eclipse a favor de Apache Eclipse plug-in.


382
2018-06-16 13:22



La forma más rápida de resolver esto es (de Documentación Eclipse m2e)

  1. utilizar arreglo rapido en el error en pom.xml y seleccione Permanently mark goal run in pom.xml as ignored in Eclipse build - Esto generará el código repetitivo requerido para usted.

  2. Después de eso solo reemplaza el <ignore/> etiqueta con <execute/> etiqueta en la configuración generada y listo:

    <action>
        <execute/>
    </action>
    

182
2018-02-11 10:08



En Eclipse Luna 4.4.0, puede optar por ignorar este error en las preferencias

Ventana > Preferencias > Maven > Errores / advertencias > La ejecución del complemento no está cubierta por la configuración del ciclo de vida. Seleccionar Ignorar / Advertencia / Error como desées.

Además, en la solución rápida (Ctrl + 1) para este error, ofrece una opción para marcar el objetivo como ignorado en la compilación de Eclipse en las preferencias de Eclipse (experimental)

Esta es una manera más limpia, ya que no modifica su pom.xml.

Tendrás que hacer una Maven > Actualizar proyecto para arreglar el mismo error en cualquier otro proyecto también.


139
2017-12-11 19:13



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

Para resolver algunos problemas de larga data,   m2e 1.0 requiere instrucciones explícitas   que hacer con todos los plugins de Maven   obligado a las fases "interesantes" de   ciclo de vida de construcción del proyecto. Llamamos a esto   instrucciones "ciclo de vida de la construcción del proyecto"   mapeo "o simplemente" mapeo del ciclo de vida "   porque definen cómo los mapas m2e   información del archivo pom.xml del proyecto   al proyecto de espacio de trabajo de Eclipse   configuración y comportamiento durante   Construcción del espacio de trabajo de Eclipse.

Mapeo del ciclo de vida del proyecto   la configuración se puede especificar en   proyecto pom.xml, contribuido por   Complementos de Eclipse y también hay   configuración predeterminada para algunos   plugins Maven comúnmente utilizados enviados   con m2e. Llamamos a esto "ciclo de vida"   mapeo de fuentes de metadatos ". m2e   crear marcador de error como a continuación para todos   ejecuciones de complementos que no tienen   mapeo del ciclo de vida en cualquiera de los   mapeo de fuentes de metadatos.

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

El complemento m2e coincide   ejecuciones a acciones usando   combinación de plugin groupId,   artefacto, gama de versiones y objetivo.   Hay tres acciones básicas que m2e   se puede instruir a hacer con un complemento   ejecución - ignorar, ejecutar y   delegar en un proyecto configurador.


105
2018-06-25 00:57



m2e 0.13 introduce un conectores m2e y m2e Market Place para extender las características de m2e. Es como el antiguo repositorio m2e-extras.

Puede acceder al mercado m2e desde las preferencias: Preferencias> Maven> Descubrimiento> Abrir catálogo. Instalación Integración de WTP solucionó la mayoría de los problemas de complementos para mí.


27
2018-06-23 14:43



Como una adición a las respuestas anteriores, hay una solución que acabo de descubrir si no puede o no quiere agregar todo este texto estándar al proyecto POM. Si miras en la siguiente ubicación:

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

Debería encontrar un archivo llamado lifecycle-mapping-metadata.xml donde puede hacer los mismos cambios descritos en las otras respuestas y en La ejecución del complemento M2E no está cubierta.


20
2018-05-16 18:44



Tenga en cuenta que la versión 1.7.0 de M2Eclipse (m2e) disponible en el tren de lanzamiento de Eclipse Neon admite la nueva sintaxis para especificar metadatos de mapeo del ciclo de vida. Como resultado, un estándar como este (aquí estamos diciendo a m2e que ignore el objetivo):

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

puede ser reemplazado por una sola línea en el nodo de ejecución del complemento:

<?m2e ignore?>

enter image description here

Ver el Notas de lanzamiento para detalles.


19
2018-06-22 21:25



Tuve el mismo problema con Eclipse v3.7 (Indigo) y m2eclipse como mi plugin Maven. El error se resolvió fácilmente al establecer explícitamente la fase de ejecución dentro de la definición del complemento. Entonces mi pom se ve así:

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

16
2017-09-14 07:15



Cambie las preferencias de Maven para la ejecución del complemento de error a ignorar


9
2017-09-21 18:59



  1. Vaya a Ayuda> Instalar nuevo software ...
  2. Utilizar esta repositorio de software

    Asegúrese de marcar "Contactar con todos los sitios de actualización durante la instalación para encontrar el software requerido".

  3. Instalar el Configurador AJDT m2e

Fuente: Actualización de la integración de Maven para SpringSource Tool Suite 2.8.0 (Andrew Eisenberg)

Esto debería instalar ADJT automáticamente si no lo tiene instalado, pero si no lo hace, primero instale AspectJ Development Tools (ADJT) desde "Indigo update site" (de acuerdo con su versión de Eclipse).

Más información sobre Sitio de herramientas de desarrollo de AspectJ.


8
2017-11-12 17:29