3
5

More than 3 years have passed since last update.

[Android]アプリ開発でのSonarQube~Java~

Last updated at Posted at 2020-01-20

はじめに

JavaでAndroidアプリの開発を行うときにSonarQubeを導入した時の手順を記載していきます。
ミニマムで導入した手順です。
Kotlinはもう少しシンプルにできると思います。

環境

OS:Windows 10(64bit)
Java:11
Android Studio:3.5

SonarQube

SonarQubeとは静的解析ツールの一つでJava, Kotlin, Swift, Goなど25以上の言語をサポートしているようです。
JenkinsやAzure DevOpsと連携することでCIツールの強化を図ることができるようです。

詳細は公式ドキュメントを参照してください。

導入手順

基本的には公式のGet Started in Two Minutes Guideに沿って行きます。

1.SonarQube Serverのインストール

以下のリンクからDownloadします。
Download SonarQube

適当な場所に展開します。
今回は以下の構成にします。
C:\SonarQube\SonarQubeServer

2.SonarQubeServerを起動

以下にあるbatを実行するだけです。
C:\SonarQube\SonarQubeServer\bin\windows-x86-64

C:\SonarQube\SonarQubeServer\bin\windows-x86-64>StartSonar.bat

http://localhost:9000/ にアクセスするとSonarQube Serverの画面を確認できます。
sonarqubeserver_notdone.png

3.Gradleの設定

プロジェクト配下のbuild.gradleの編集を行います。
build.gradleの先頭に以下を追記します。

plugins {
  id "org.sonarqube" version "2.7"
}

4.gradle.propertiesの設定

ここからはアプリ側の設定を行っていきます。
公式ではSonarScanner for Gradleを参考にしてます。
gradle.propertiesに以下を追記します。

# gradle.properties
systemProp.sonar.host.url=http://localhost:9000

#----- Token generated from an account with 'publish analysis' permission
systemProp.sonar.login=<token>

tokenはSonarQube Serverから取得します。

5.Tokenの取得

SonarQube Serverに戻ります。
(1) 右上のLog inからログイン

ユーザー名:admin
パスワード:admin

(2) 右上のユーザーアイコンのMy Accountから管理者画面に移動
(3) Securityのタブを選択
(4) Tokensのところにプロジェクト名を入れてTokenを取得

6.実行

以下のいずれかで静的解析を実行
(1) Android SrudioのGradle > app > Tasks > other > sonarqubeをダブルクリック
sonarqube.png

(2) プロジェクト配下で以下を実行

./gradlew sonarqube

7.確認

http://localhost:9000 にアクセスしてappが表示されれば完了
sonarqubeserver.png

参考文献

公式
SONNARQUBEでソースコードの品質を解析する
  最初にSonarQubeを導入するにあたって参考にさせていただきました。Kotlinのプロジェクトはこちらの記事で解析まで行うことができました。

3
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
3
5