6

チェックゴールを実行したときに maven-checkstyle-plugin をコンソールに警告を出力する方法がわかりません。

次のように構成した場合:

<module name="Checker">
    <module name="TreeWalker">
        <module name="NPathComplexity">
            <property name="max" value="5" />
            <property name="severity" value="warning" />
        </module>
    </module>
</module>

...コンソールに何も表示されず、チェックは失敗しません。重大度をエラーに変更すると、チェックは失敗します。

何か案は?何か不足していますか?

プラグイン構成は以下の通り

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>2.9.1</version>
                <configuration>
                    <includeTestSourceDirectory>true</includeTestSourceDirectory>
                    <logViolationsToConsole>true</logViolationsToConsole>
                    <configLocation>
                        rules.xml</configLocation>
                </configuration>
                <executions>
                    <execution>
                        <phase>compile</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
4

3 に答える 3

6

私も同様の問題を抱えていました。この構成は私のために働いた。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>2.9.1</version>
    <configuration>
        <consoleOutput>true</consoleOutput>
    </configuration>
    <executions>
        <execution>
           <id>checkstyle</id>
           <goals>
               <goal>checkstyle</goal>
           </goals>
           <phase>prepare-package</phase>
        </execution>
    </executions>
</plugin>
于 2012-08-12T02:53:42.067 に答える
0

ドキュメントに記載されているように、コンソールに情報を印刷するには、チェックの目標を明示的に追加する必要があると思います。

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>2.9.1</version>
    <executions>
      <execute>
        <id>check</id>
        <goals><goal>check</goal></goals>
        <phase>prepare-package</phase>
      <execute>
    </executions>
  </plugin>

mvnの呼び出し方法に応じて、チェックが実行されるフェーズを変更する必要があります。maven-checkstyle-pluginのデフォルトのバインディングはverfiyフェーズです。実行ブロックで明示的なフェーズを指定するか、mvn clean verifyを実行するだけで、フェーズエントリを省略できます。

于 2012-05-07T19:55:51.917 に答える