2016-07-29 33 views
5

私が使用しているプラ​​グインCheckstyle Java generics: '?'空白

<artifactId>maven-checkstyle-plugin</artifactId> 
<version>2.17</version> 

それは6.11.2のCheckstyleバージョンを持っていると先行されていません。空白について言っ構成は次のとおりです。

<module name="NoWhitespaceAfter"> 
    <property name="severity" value="error" /> 
    <property name="tokens" value="ARRAY_INIT,BNOT,DEC,DOT,INC,LNOT" /> 
</module> 
<module name="NoWhitespaceBefore"> 
    <property name="severity" value="error" /> 
</module> 
<module name="RedundantModifier"> 
    <property name="severity" value="error" /> 
</module> 
<module name="WhitespaceAround"> 
    <property name="severity" value="error" /> 
    <property name="tokens" value="ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,DO_WHILE,EQUAL,GE,LAND,LCURLY,LE,LITERAL_ASSERT,LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,LITERAL_RETURN,LITERAL_SYNCHRONIZED,LITERAL_TRY,LITERAL_WHILE,LOR,MINUS,MINUS_ASSIGN,MOD,MOD_ASSIGN,NOT_EQUAL,PLUS,PLUS_ASSIGN,RCURLY,SL,SLIST,SL_ASSIGN,SR,SR_ASSIGN,STAR,STAR_ASSIGN,TYPE_EXTENSION_AND" /> 
</module> 

私はいつもこのエラーが出る:

(whitespace) WhitespaceAround: WhitespaceAround: '?' is not preceded with whitespace. 
(whitespace) WhitespaceAround: WhitespaceAround: '?' is not followed by whitespace. 
Empty blocks may only be represented as {} when not part of a multi-block statement (4.1.3) 

コードスニペットは、次のとおりです。

Class<?>[] groups() default {}; 
Class<? extends Payload>[] payload() default {}; 

私は空白とスニペットを削除しようとしましたが、まだ取得します同じエラー。

誰も同じ問題がありますか?

多くの感謝!

+0

このエラーが発生するスニペットを共有してください。 – Mureinik

+1

これは、奇妙なほど積極的な "WhitespaceAround'ルールのようです。 – user2357112

+0

@Mureinikそれは良い場所です。私は質問を更新しました。 –

答えて

4

それはCheckstyleはバグです、それはCheckstyle 6.14で修正されています(https://github.com/checkstyle/checkstyle/issues/2633を参照)

あなたはMavenの-Checkstyleは、プラグインで<dependencies>セクションを追加することでのCheckstyleをアップグレードすることができます

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-checkstyle-plugin</artifactId> 
    <version>2.17</version> 
    <dependencies> 
     <dependency> 
      <groupId>com.puppycrawl.tools</groupId> 
      <artifactId>checkstyle</artifactId> 
      <version>6.14</version> 
     </dependency> 
    </dependencies> 
</plugin> 

かを最新のCheckstyle(7.0)に直接進むことができます。

+0

それは役に立ちません。バージョン6.14でも同じエラーが発生します。バージョン7.xではJava 8が必要ですが、プロジェクトではJDK 7を使用しています。他のアイデア? –

+0

他のバージョン> 6.14と7.0を試してみましたか? –

+0

それはあなたの正確なケースの修正が必要なので、それは非常に奇妙です。 –