検索
連載

コード探知機「Sonar」でプロジェクトの深海を探れ!ユカイ、ツーカイ、カイハツ環境!(17)(4/4 ページ)

Share
Tweet
LINE
Hatena
前のページへ |       

Sonarのプラグインを使うには?

 Sonarは、EclipseやTracなどのほかのツールと同じようにプラグインにより、Java以外の言語に対応したり、取得できるメトリクスを増やせます。プラグインはjarファイルで提供されています。

 ここでは、Tracのチケットの統計情報を表示するTrac Pluginを例にプラグインのインストールと利用方法を紹介します。

プラグインの取得・インストール

 Sonarのプラグインは、「Sonar Plugin Library」でさまざまなものが提供されています。ここから、プラグインをダウンロード、インストールします。

 Trac Pluginのサイトで取得できるので、このサイトより「tracplugin-x.x.x.jarファイル」(x.x.xはバージョン番号)をダウンロードし、Sonarをインストールしたディレクトリの「extensions\plugins」ディレクトリにプラグインファイルをコピーすれば、インストールは完了です。Sonarを再起動すると、プラグインは有効になります。

プラグインの設定

 プラグインによって設定方法は異なりますが、tracpluginの場合、Mavenのビルドファイル(pom.xml)に課題管理システムを設定すると有効になります。課題管理システムを設定するには、pom.xmlのプロジェクトの設定(projectタグ)に次のように記述します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

pom.xmlへの追記項目

 また、プロジェクトのSettings画面で、Tracの設定ができます(※Settings画面を表示するには、adminでログインする必要があります)。

図13 Tracプラグインのセットアップ画面
図13 Tracプラグインのセットアップ画面

 後は、通常どおり、MavenのSonarpプラグインを利用するとTracのチケット情報が登録され、ダッシュボードに表示されるようになります。

図14 Tracプラグインのダッシュボード
図14 Tracプラグインのダッシュボード

 なお、tracpluginはXMLRPCを利用してtracと通信するため、TracへXML-RPCプラグインを導入しanonymousユーザーにXML_RPC権限を付与しておく必要があります。TracLightningをお使いの場合は、XML_RPCプラグインは導入済みなので、anonymousユーザーにXML_RPC権限を付与してください。

 また、ユーザー/パスワードを設定画面で設定できるようになっていますが、Basic認証にしか対応していないようです。Digest認証を利用している場合は、Basic認証に変更する必要があるので、注意してください(TracLightningはDigest認証を利用しています)。

 Sonarの多くのプラグインは、プラグインをインストールするとSettings画面でプラグインの設定ができます。プラグインをインストールしたら、取りあえずSettings画面を確認してみるといいでしょう。

デフォルトのDBをMySQLに変更するには?

 Sonarはデフォルトでは、データベースにApache Derbyを利用します。Apache Derbyを筆者が確認した限りでは特に不具合は見られませんでしたが、Sonarのページによると、プロジェクトで運営する場合は、MySQLなどのエンタープライズクラスのデータベースを利用することが推奨されています。

 ここでは、データベースをApache DerbyからMySQLへ変更してみましょう。MySQLを利用するには、以下の3つの手順が必要です。それぞれ見ていきましょう。

  1. データベースの設定
  2. Sonarの設定
  3. Mavenの設定

【1】データベースの設定

 設定を行うスクリプトがSonarをインストールしたディレクトリの下の「extras\database\mysql\create_database.sql」にありますので、管理者権限でmysqlスクリプトを実行します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

【2】Sonarの設定

 Sonarをインストールしたディレクトリの下のconf\sonar.propertiesファイルを編集し、Apache Derbyの設定をコメントアウトし、MySQLの設定のファイルを書き換えます。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

sonar.propertiesの変更点


【3】Mavenの設定の変更

 最後に、Mavenでビルドを行うマシンでMavenの設定ファイルを編集します。Mavenの設定ファイルは、Mavenをインストールしたディレクトリの下のconf\settings.xmlにあります(ユーザーホームの下の.m2ディレクトリの下のファイルでも可能です)。

 設定は、「settings/profiles」タグ以下に下記のようにSonarのプロファイルを記述します。ビルドマシンの構成上、Sonarを起動したサーバとビルド用のサーバを分けたい場合は、sonar.host.urlをSonarを起動するサーバを指定します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

settings.xmlの編集内容


Sonarでメトリクスマスターになろう!

 MavenとMavenの各種のプラグインFindBugsやPMD、CheckStyle、CPD、Cobertura……を利用すれば、Sonarで取得できるメトリクスと同じ情報は取れます。しかしながら、個別にビルドファイルを設定する必要がありますし、メトリクスの閲覧も個別のプラグインの出力結果を確認する必要があり、全体を俯瞰(ふかん)するのは困難です。

 Sonarを利用すれば、簡単にメトリクスを取得でき、なおかつ、全体を俯瞰できます。また、プラグインアーキテクチャにより、機能を追加したり、足りないメトリクスも追加できます。

 Sonarの導入は非常に簡単です、Mavenのビルドファイルを変更する必要がなく、単にSonarサーバを用意してSonarプラグインを利用するだけで導入できます。すでに、何らかのメトリクス取得ツールや、コーディング規約違反検出ツールを導入しているプロジェクトは多いと思いますが、既存のプロジェクトへの影響も小さいので、Sonarを導入して取得するメトリクスの幅を広げてみてはいかがでしょうか。


「ユカイ、ツーカイ、カイハツ環境!」バックナンバー

Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る