Question

J'ai un projet Maven multi, quand je crée une nouvelle éclipse projet de celui-ci (par M2E 1.0 « Commander Maven Projet de SCM) Je veux que l'éclipse checkstyle plug-in est configuré pour ce projet automatiquement.

J'ajouté le maven-eclipse-plugin dans la section <pluginManagement> de parent pom et configuré pour générer un fichier .checkstyle ainsi que la CheckstyleNature nature du projet supplémentaire. Dans les poms Modul j'ai ajouté le nom du maven-eclipse-plugin dans la section de construction. Mais quand j'extraira le projet happend rien, le fichier est généré et la nature n'est pas ajouté.

Je pense que je suis en train de faire quelque chose de tout à fait tort, mais comment est-il fait correct?


Parent pom - section de gestion plugin:

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

Module pom - section plugins:

<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-eclipse-plugin</artifactId>
</plugin>
Était-ce utile?

La solution

Il y a des réponses détaillées à ce sujet dans Puis-je configurer m2eclipse par pom.xml :

ne peut être atteint complètement la configuration automatique du plug-in Eclipse Checkstyle avec un ProjectConfigurator, par exemple M2e code qualité ou M2e-extensions .

Pour M2e de la version 1.0, vous pouvez les installer via le marché M2e sous Préférences-> Maven-> Découverte -> "Ouvrir le catalogue". Pour plus de détails voir le suivi des bogues pour l'intégration de la qualité de M2e-code sur le marché de M2e .

Il y a une solution également basée sur AntRun et XMLTask même pour FindBugs et Sonar. Il a besoin d'un déclenchement manuel qu'une seule fois après le départ.

Autres conseils

Le plugin maven éclipse n'est pas la même chose que le plugin pour eclipse M2e, que je suppose que vous essayez d'utiliser. Fondamentalement, vous ne devriez pas utiliser les deux en même temps.

Vous pouvez utiliser mvn eclipse: éclipse de la ligne de commande pour générer des fichiers de projet et vous pouvez importer les projets dans Eclipse. M2e fonctionne très différemment et utilise plutôt les fichiers pom lorsque vous importez des projets comme plugins Maven. Probablement ce que vous voulez est de configurer le plugin checkstyle et nous espérons éclipse choisirais les paramètres. Idem pour findbugs et autres plugins Maven.

Cependant, je préfère l'utilisation mvn eclipse: eclipse et n'ont pas fait vérifié les travaux ci-dessus comme prévu. M2e est juste trop d'une perte de temps pour moi et semble en aller et faire les choses souvent mal. Je déteste surtout la façon dont il a l'habitude de reconstruire pratiquement tout après l'interaction de ligne de commande avec Maven. Mais beaucoup de gens semblent comme M2e.

Il faut installer le connecteur "Checkstyle M2e"

applique sous forme de configuration du maven-checkstyle-plugin à l'éclipse checkstyle plug-in

Dans la fenêtre \ préférences Maven \ Discover \ Open Catalogue

Et bien sûr, on doit changer la pom, de sorte que le plug-in de style de contrôle est configuré, au lieu de l'éclipse plugin.

Malheureusement, il ne fonctionne pas pour moi! (Je ne vais pas supprimer la réponse car il peut travailler pour quelqu'un d'autre.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top