2017-05-15 23 views
5

私は次のような構成でGoogleのjavaチェックスタイルを使用するために私のMavenプロジェクトを設定しようとしている:JavaのグーグルのCheckstyleのMaven

google_checks.xml:https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml

のpom.xml

<build> 
    <plugins> 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-checkstyle-plugin</artifactId> 
     <version>2.17</version> 
     <executions> 
     <execution> 
      <id>checkstyle</id> 
      <phase>validate</phase> 
      <goals> 
      <goal>check</goal> 
      </goals> 
     </execution> 
     </executions> 
     <configuration> 
     <configLocation>google_checks.xml</configLocation> 
     <encoding>UTF-8</encoding> 
     <consoleOutput>true</consoleOutput> 
     <failsOnError>true</failsOnError> 
     </configuration> 
    </plugin> 
    </plugins> 
</build> 

<reporting> 
    <plugins> 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jxr-plugin</artifactId> 
     <version>2.5</version> 
    </plugin> 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-checkstyle-plugin</artifactId> 
     <version>2.17</version> 
     <configuration> 
     <configLocation>google_checks.xml</configLocation> 
     <failOnViolation>false</failOnViolation> 
     <enableFilesSummary>false</enableFilesSummary> 
     </configuration> 
    </plugin> 
    </plugins> 
</reporting> 

最初はmvn checkstyle:checkを実行しているようです。しかし、いくつかの実行後、私は次のエラーが発生し始めます:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check 
(default-cli) on project PROJECT: Failed during checkstyle configuration: cannot initialize 
module TreeWalker - Token "METHOD_REF" was not found in Acceptable tokens list in check 
com.puppycrawl.tools.checkstyle.checks.whitespace.SeparatorWrapCheck -> [Help 1] 

これはどういう意味ですか?なぜそれは何度かしか起こらないのですが、どうすればそれを取り除くことができますか?

+0

https://maven.apache.org/plugins/maven-checkstyle-plugin/examples/upgrading-checkstyle.htmlに記載されているように、おそらく新しいバージョンのCheckstyleを設定する必要があります。 maven-checkstyle-pluginはデフォルトでバージョン6.11.2を使用していますが、Googleのチェックではすべてのルールが使用されていない可能性があります。 –

答えて

7

Token "METHOD_REF" was not found in Acceptable tokens list in check com.puppycrawl.tools.checkstyle.checks.whitespace.SeparatorWrapCheck

古いバージョンのCheckstyleで新しい設定を使用しようとしています。

https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xmlの設定は、masterにあります。これはcheckstyleのスナップショットバージョンに依存します。

あなたが任意の変更を加えることなく、Googleのコンフィギュレーションを使用している場合は、Checkstyleの中に埋め込まれていますいずれかを使用する必要があります。そうしないとあなたは達人で動作するのCheckstyleの新しいバージョンを統合することができhttps://stackoverflow.com/a/35486365/1016482

を参照してください。 https://stackoverflow.com/a/27359107/1016482

+0

私がMavenを使用していない場合、どうすれば入手できますか? – moondaisy

+0

@mondondy Checkstyleには、Googleの設定が埋め込まれています。コマンドライン、mavenなどからアクセスできます。また、JARから抽出​​し、必要に応じてHD上にファイルとして配置することもできます。それはすべてあなたがCheckstyleを呼び出す方法に依存します。セットアップの詳細が必要な場合は、新しい質問を開始することができます。 – rveach

+0

私は瓶でそれを見て、私が個別にファイルを必要とするので、私は、NetBeansのためのチェック・スタイルのプラグインを使用しています、そこではないようです。 – moondaisy

関連する問題