Pregunta

Tengo un proyecto Maven-Multi, cuando creo un nuevo proyecto Eclipse de él (por M2E 1.0 "Proyecto Maven de SCM) Quiero que el complemento de checkstyle de eclipse esté configurado para ese proyecto automáticamente.

Entonces agregué el maven-eclipse-plugin En los padres de POM <pluginManagement> sección y la configuró para generar .checkstyle Archivo, así como la naturaleza adicional del proyecto CheckstyleNature. En el módulo pommes agregué el nombre de la maven-eclipse-plugin en la sección de compilación. Pero cuando reviso el proyecto que nada sucede, el archivo no se genera y la naturaleza no se agrega.

Así que creo que estoy haciendo algo completamente mal, pero ¿cómo se hace correcto?


POM de padres - Sección de gestión de complementos:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-eclipse-plugin</artifactId>
    <version>2.8</version>
    <configuration>
        <downloadSources>true</downloadSources>
        <downloadJavadocs>false</downloadJavadocs>
        <wtpversion>2.0</wtpversion>
        <additionalBuildcommands>
            <buildCommand>
                <name>org.eclipse.ajdt.core.ajbuilder</name>
                <arguments>
                    <aspectPath>org.springframework.aspects</aspectPath>
                </arguments>
            </buildCommand>
            <buildCommand>
                <name>org.springframework.ide.eclipse.core.springbuilder</name>
            </buildCommand>
        </additionalBuildcommands>
        <additionalProjectnatures>
            <projectnature>org.eclipse.ajdt.ui.ajnature</projectnature>
            <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
            <projectnature>com.atlassw.tools.eclipse.checkstyle.CheckstyleNature</projectnature>
        </additionalProjectnatures>
        <additionalConfig>
            <file>
                <name>.checkstyle</name>
                <content>
<![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
  <fileset name="all" enabled="true" check-config-name="My Checkstyle rules" local="false">
    <file-match-pattern match-pattern="." include-pattern="true"/>
  </fileset>
  <filter name="FilesFromPackage" enabled="true">
    <filter-data value="target" />
    <filter-data value="src/main/resources"/>
    <filter-data value="src/test/java"/>
    <filter-data value="src/test/resources"/>
    <filter-data value="src/main/webapp" />
  </filter>
</fileset-config>
]]>
                </content>
            </file>
        </additionalConfig>
    </configuration>
</plugin>

Módulo POM - Sección de complementos:

<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-eclipse-plugin</artifactId>
</plugin>
¿Fue útil?

Solución

Hay respuestas detalladas a este tema en ¿Puedo configurar m2eclipse a través de pom.xml?:

La configuración completamente automática del complemento de checkstyle de eclipse solo se puede lograr con un Configurador Project, por ejemplo, calidad de código m2E o M2E-Extensiones.

Para M2E a partir de la versión 1.0, puede instalarlos a través del mercado M2E bajo Preferencias-> Maven-> Discovery-> "Open Catálogo". Para más detalles ver el Seguimiento de errores para la integración de la calidad de código M2E en el mercado M2E.

También hay una solución basada en Antrun y XMLTask incluso para FindBugs y Sonar. Necesita activación manual solo una vez después del pago.

Otros consejos

El complemento Maven Eclipse no es lo mismo que el complemento M2E para Eclipse, que supongo que está tratando de usar. Básicamente no deberías usar ambos al mismo tiempo.

Puede usar MVN Eclipse: Eclipse desde la línea de comando para generar archivos de proyecto y luego puede importar los proyectos a Eclipse. M2E funciona de manera muy diferente y en su lugar usa los archivos POM cuando importa proyectos como complementos Maven. Probablemente lo que desea es configurar el complemento de checkStyle y, con suerte, Eclipse recogería la configuración. Lo mismo para FindBugs y otros complementos Maven.

Sin embargo, en realidad prefiero usar MVN Eclipse: Eclipse y en realidad no he verificado las funciones anteriores como se esperaba. M2E es un desperdicio demasiado tiempo para mí y parece salir y hacer las cosas equivocadas con frecuencia. Odio particularmente cómo tiene el hábito de reconstruir básicamente todo después de la interacción de la línea de comandos con Maven. Pero a mucha gente parece gustarle M2E.

Uno debe instalar el conector "M2E" CHECKSTYLE "

Aplica la configuración del formulario Maven-CheckStyle-Plugin en el complemento de checkstyle de eclipse

En Window Preferences Maven Discover Open Catálogo

Y, por supuesto, uno tiene que cambiar el POM, de modo que el complemento de estilo de verificación esté configurado, en lugar del complemento Eclipse.

¡Desafortunadamente no funciona para mí! (No eliminaré la respuesta porque puede funcionar para otra persona).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top