4
5

More than 5 years have passed since last update.

SonarQubeで複数プログラム言語の品質を測定する方法

Posted at

SonarQube4.2から複数プログラム言語の品質を1つのプロジェクトで集められるようになりました。
ちょっとはまったので、その備忘録を残しておきます。
(mavenでの解説です。)

複数プログラム言語の品質を収集できるようになったとはいえ、
デフォルトの設定では動きません。

SonarQube4.2から「sonar.sources」のプロパティが追加されています。
このプロパティ、デフォルト値が「src/main/java」です。。。
なのでデフォルトだと結局Javaの品質しか集めません。。。

pomのプロパティに以下を追加だけで、複数プログラム言語の品質を収集するようになります。
※sonar-web-pluginやsonar-javascript-pluginは先に入れておく必要があります。

<properties>
  <sonar.sources>src/main</sonar.sources>
</properties>

これで、src/main以下のソースを全て読み込むようになりますが、
jqueryなどのライブラリが入っていると、これも読み込む対象とされてしまうので、
こういうものは、「sonar.exclusions」で除外しておきます。
以下のようにします。

<properties>
  <sonar.sources>src/main</sonar.sources>
  <sonar.exclusions>src/test/**/.java,**/*jquery.js</sonar.exclusions>
</properties>

上記はテストコードとjqueryを抜く、と宣言しています。

この状態で「mvn sonar:sonar」を実行すれば複数プログラム言語の品質プロジェクトが作られます。

また、上記プロパティをmavenの引数に与えた場合は、上手く値が適応されず「src/main/java」になってしまうので、SonarQube4.2ではpomに書いておく必要がありました。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5