maven

SonarQubeでJavaのコードを解析する(Maven編)

SonarQubeでは複数の方法でコード解析を実行することが出来ます。 SonarQube Runner スタンドアロンJavaアプリ Mavenプラグイン Antタスク Gradle CIサーバ Jenkins, Bambooなど MavenもしくはGradleで管理されたプロジェクトでは、それぞれ対応するプラグイ…

SonarQubeでMavenのMulti-moduleかつMulti-language

SonarQube 4.2からMulti-languageがサポートされました。これにより、例えばJavaとJavascriptが1つのMavenプロジェクト内に存在する場合でも、両方の言語の解析結果を見ることができるようになりました。 Multi-languageとして解析するために特別な設定は不…

SonarQubeでMavenのレポートを再利用する設定

最近リリースされたSonarQube 4.3から、SonarQube実行時にユニットテストを実行する機能である sonar.dynamicAnalysis が非推奨になりました。*1 SonarQube自身が様々なの言語への対応を進める中で、各言語のテストフレームワーク全てを実行できるようにする…

gmaven-plugin 1.3 の generateStubs に sourceEncoding を効かせるパッチを書いた

Maven の gmaven-plugin 1.3 で providerSelection に 1.7 を指定している場合、マルチバイト文字列のあるGroovyファイルで generateStubs ゴールが失敗する問題がある。GMaven の JIRA には GMAVEN-85 で上がってるのでそのうち直りそうだけど、とりあえず…

codenarc-maven-pluginをmvn siteで使えるようにするパッチ

GroovyのコーディングスタイルをチェックするCodeNarcには、Mavenプラグインが用意されてはいるのだけど、mvn siteから実行させようとすると無限ループに陥ってしまう。 仕方ないから codenarc-maven-plugin 0.8-alpha-SNAPSHOT に対するパッチを書いた。 ht…

Maven 2.0.7 + Continuum

Maven 2.0.7 のmvn.batは、エラーコードを正しく返さない。そのため、たとえコンパイルが失敗しても、テストが通らなくても、Continuumはビルドが成功したと判断してしまう。(From Continuum - Continuum Faqs) Continuumサーバのmvn.batを、上からたどれ…

cobertura-maven-plugin 2.1でカバレッジが100%になるバグの回避方法

Maven2でcobertura-maven-pluginの2.1には、レポートでカバレッジが常に100%になっちゃうバグがある。これはmaven-surefire-pluginでcoberturaのファイルを指定してやることで、正しい結果を得ることができる。2.0に戻したりする必要はありません。 <plugins> <plugin> <groupId>org.ap</groupid></plugin></plugins>…