web-dev-qa-db-fra.com

Style de vérification Maven dans le cadre de la construction

Existe-t-il une possibilité de forcer maven à échouer à la construction s’il ya des erreurs checkstyle? Maintenant, je dois exécuter l'objectif site pour générer des rapports javadocs et checkstyle. Je veux le faire sur le but install et si checkstyle a une erreur, j'ai besoin de construire pour échouer. Est-ce possible à réaliser?

Maintenant, j’ai ma checkstyle dans le bloc de rapport de maven:

<reporting>
    <plugins>
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <version>2.9.1</version>
            <configuration>
                <configLocation>src/test/resources/checkstyle.xml</configLocation>
            </configuration>
        </plugin>
    </plugins>
</reporting>
21
Paulius Matulionis

Vous devez lier checkstyle:check à une phase du cycle de vie Maven (par exemple, valider) et définir failOnViolation sur true.

Quelque chose comme: 

<plugin>
    <groupId>org.Apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>2.9.1</version>
    <executions>
        <execution>
        <id>checkstyle</id>
        <phase>validate</phase>
        <goals>
            <goal>check</goal>
        </goals>
        <configuration>
            <failOnViolation>true</failOnViolation>
        </configuration>
        </execution>
    </executions>
</plugin>
26
hgrey

Cela faisait peut-être un moment que la question avait été posée, mais cela ne fonctionnait pas pour moi.

Pour quiconque ayant le même problème que moi, la construction réussissant malgré une multitude de problèmes, je l'ai corrigé en abaissant la propriété violationSeverity de sa valeur par défaut error à warning dans le bloc configuration du plugin.

5
JChrist

Même si cela fait longtemps que cette question n’a pas été posée, j’ai rencontré un autre problème:

JavadocMethod: Unable to get class information for @throws tag 'X'.

J'ai résolu ce problème en remplaçant la phase "validate" par "test" afin que checkstyle s'exécute après la phase de compilation.

0
Garret Fick