tanamonの稀に良く書く日記

KEEP CALM AND DRINK BEER

Checkstyleの定義ファイルをURL指定する

maven-checkstyle-pluginの話。


maven-checkstyle-pluginのサンプルでは大抵、

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <configLocation>checkstyle.xml</configLocation>
        </configuration>
      </plugin>
    </plugins>
  </reporting>

こんな風に定義のXMLファイルがベタ書きされ、それがプロジェクトごとにファイルを持たないといけないというところが微妙なのですが、実はconfigLocationにはURLを指定できるようです。


このURLにsvnリポジトリを指定してやれば、各プロジェクトごとに定義ファイルを持つ必要が無くなるので、一元管理ができるわけです。

<configLocation>http://svn.tanamon.jp/checkstyle/checkstyle.xml</configLocation>

こんあ感じ。
(URLはてきとうです)


しかし、URLを指定した場合、指定先のファイルの文字コードがOSと違うと文字化けしてチェックに失敗するという罠があります。その場合、

MAVEN_OPTS=-Dfile.encoding=UTF-8

という感じにVMのパラメータを変えてやれば文字化けは回避できるのですが、これはちょっとアレです。

というわけで定義ファイルの文字コードをOSに合わせるという解決策が妥当そうです。