Sonar6.0基於centos7.2安裝與使用(一)
Sonar是一個用於程式碼質量管理的開源平臺,用於管理原始碼的質量,可以從多個維度檢測程式碼質量
,通過外掛形式,可以支援包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十幾種程式語言的程式碼質量管理與檢測。
Sonar可以通過多種方式來實現程式碼質量檢查,官方資料顯示Sonar 執行分析的方法有以下幾種方式:
本系列文章重點實現命令列方式(Scanner2.8、Runner2.4)、整合Eclipse實時分析分式、Jenkins+Maven對程式碼資源庫分析方式。
一、安裝 版本及下載地址
Sonarqube版本:6.0
sonar-runner版本:sonar-runner-dist-2.4
漢化包版本:sonar-l10n-zh-plugin-1.8.jar
資料庫版本:MySQL-5.6.32
作業系統版本:Centos7.2-最小化安裝
JDK版本:JDK1.8.0_102 64位
二、下載各軟體
cd /usr/local/src
三、安裝軟體
1、Mysql5.6.23安裝
tar xvf MySQL-5.6.32-1.linux_glibc2.5.x86_64.rpm-bundle.tar
yum remove -y mariadb-libs-5.5.50-1.el7_2.x86_64 #刪除衝突包
yum -y install autoconf #安裝依賴包
yum -y install MySQL-server-5.6.32-1.linux_glibc2.5.x86_64.rpm #安裝服務端
yum -y install MySQL-client-5.6.32-1.linux_glibc2.5.x86_64.rpm #安裝客戶端
MySQL的預設安裝位置
/var/lib/mysql #資料庫目錄 datadir
/usr/share/mysql #配置檔案目錄
/usr #相關命令目錄 basadir
/etc/init.d/mysql #啟動指令碼
在安裝時已經建立了預設使用者mysql,並對預設目錄進行了訪問授權。
- 修改啟動配件檔案
vim /etc/init.d/mysql
找到並修改如下:
basedir='/usr'
datadir='/var/lib/mysql'
- 修改配置檔案
cp /usr/share/mysql/my-default.cnf /etc/my.cnf
vim /etc/my.cnf
找到並如下修改
basedir = /usr
datadir = /var/lib/mysql
port = 3306
# server_id = .....
socket = /var/lib/mysql/mysql.sock
- 資料庫初始化
mysql_install_db --user=mysql #生成新的MySQL授權表,並且只能在mysql服務停止的情況下執行
在提示檔案中看到兩個“OK”後才表示成功
- 啟動Mysql
systemctl daemon-reload #啟動守護程序
systemctl start mysql.service
systemctl enable mysql.service
- 登陸測試下Mysql安裝成功
mysql –uroot
show databases;
exit
- 給mysql中預設無密碼管理賬號root設定密碼,並登陸
mysqladmin -uroot password 'll1qaz369*'
mysql -uroot -pll1qaz369*
- 為sonar建立資料庫及使用者賬號密碼
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'sonar' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
FLUSH PRIVILEGES;
2、安裝JDK1.8.0_102
cd /usr/local/src
yum –y install jdk-8u102-linux-x64.rpm
- 根據安裝目錄修改配置檔案:
vim /etc/profile
- 在末尾輸入以下內容:
JAVA_HOME=/usr/java/jdk1.8.0_102/
JAVA_BIN=/usr/java/jdk1.8.0_102/bin
JRE_HOME=/usr/java/jdk1.8.0_102/jre
PATH=$PATH:/usr/java/jdk1.8.0_102/bin:/usr/java/jdk1.8.0_102/jre/bin
CLASSPATH=/usr/java/jdk1.8.0_102/jre/lib:/usr/java/jdk1.8.0_102/lib:/usr/java/jdk1.8.0_102/jre/lib/charsets.zip
export JAVA_HOME JAVA_BIN JRE_HOME PATH CLASSPATH
- 儲存檔案後,使其生效:
source /etc/profile
- 檢測是否設定正確:
java –version
- 如果顯示如下內容,則配置正確:
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)
3、安裝配置Sonarqube6.0
yum –y install unzip
unzip sonarqube-6.0.zip
- 配置Sonarqube6.0
mv sonarqube-6.0 /usr/local/
vim /usr/local/sonarqube-6.0/conf/sonar.properties
找到下面內容並把前面的#號去掉,開啟對mysql5.6的支援(所有用預設,根據實際需求可以自己改配置)
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.web.host=0.0.0.0
sonar.web.context=
sonar.web.port=80
- 啟動Sonarqube6.0
cd /usr/local/sonarqube-6.0/bin/linux-x86-64
./sonar.sh start #啟動服務(其它操作: ./sonar.sh stop 停止服務 ./sonar.sh restart 重啟服務
Starting SonarQube...
Started SonarQube.
- 啟動成功後,第一次訪問網站速度比較慢,在第三方電腦瀏覽器中輸入地址訪問:
- 安裝中文語言包
cd /usr/local/sonarqube-6.0/extensions/plugins/
Sonar自帶的語言規則只有:C#,Java,JavaScript,如果需要其它語言規則可以自己下載到plugins目錄下後再重啟sonar服務就行,
/usr/local/sonarqube-6.0/bin/linux-x86-64/sonar.sh restart
重啟sonar服務後再次登陸地址,已經改成中文版了,所有規則已經就緒。
- 配置為自啟動
vim /etc/init.d/sonar
新建檔案並增加如下內容:
#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO
/usr/bin/sonar $*
- 新增啟動服務
ln -s /usr/local/sonarqube-6.0/bin/linux-x86-64/sonar.sh /usr/bin/sonar
chkconfig sonar on
chkconfig start
4、安裝sonar-runner-dist-2.4
cd /usr/local/src/
unzip sonar-runner-dist-2.4.zip
mv sonar-runner-2.4/ /usr/local/
- 配置PATH路徑
vim /etc/profile
在檔案最後加入如下內容,儲存並退出。
PATH=$PATH:/usr/local/sonar-runner-2.4/bin
export PATH
- 配置sonar啟動配置檔案
vim /usr/local/sonar-runner-2.4/conf/sonar-runner.properties
把下面內容前#號去掉或增加後,儲存並退出
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.host.url=http://192.168.1.190
sonar.login=admin
sonar.password=admin