溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

SonarQube代碼質(zhì)量管理平臺(tái)的安裝與配置

發(fā)布時(shí)間:2020-07-28 04:12:49 來(lái)源:網(wǎng)絡(luò) 閱讀:1505 作者:順境其生 欄目:MySQL數(shù)據(jù)庫(kù)

一、SonarQube的介紹

SonarQube是一個(gè)管理代碼質(zhì)量的開(kāi)放平臺(tái)。

可以從七個(gè)維度檢測(cè)代碼質(zhì)量(為什么要用SonarQube):

(1)  復(fù)雜度分布(complexity): :代碼復(fù)雜度過(guò)高將難以理解、難以維護(hù)

(2)  重復(fù)代碼(duplications): :程序中包含大量復(fù)制粘貼的代碼是質(zhì)量低下的表現(xiàn)

(3)  單元測(cè)試(unit tests): :統(tǒng)計(jì)并展示單元測(cè)試覆蓋率

(4)  編碼規(guī)范(coding rules) :通過(guò)Findbugs,PMD,CheckStyle等規(guī)范代碼編寫(xiě)

(5)  注釋(comments): :少了可讀性差,多了看起來(lái)費(fèi)勁

(6)  潛在的Bug(potential bugs) :通過(guò)Findbugs,PMD,CheckStyle等檢測(cè)潛在的bug

(7)  結(jié)構(gòu)與設(shè)計(jì)(architecture & design): :依賴(lài)、耦合等

Sonar 可以集成不同的測(cè)試工具、代碼分析工具、持續(xù)集成工具、IDE。

Sonar通過(guò)對(duì)代碼質(zhì)量分析結(jié)果數(shù)據(jù)進(jìn)行再加工處理,通過(guò)量化的方式來(lái)度量

代碼質(zhì)量的變化,從而可以方便地對(duì)工程進(jìn)行代碼質(zhì)量管理。

支持的語(yǔ)言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。


二、SonarQube平臺(tái)的組成:

(1) 數(shù)據(jù)庫(kù):存放SonarQube的配置數(shù)據(jù)、代碼質(zhì)量的快照數(shù)據(jù)

(2) Web服務(wù):用于查看SonarQube的配置數(shù)據(jù)、代碼質(zhì)量的快照數(shù)據(jù)

(3) 分析器:對(duì)項(xiàng)目代碼進(jìn)行分析,生成質(zhì)量結(jié)果數(shù)據(jù)并存入數(shù)據(jù)庫(kù)中

(分析器有多種,我們選用 SonarQube Maven Plugin)

SonarQube代碼質(zhì)量管理平臺(tái)的安裝與配置


三、SonarQube代碼質(zhì)量管理平臺(tái)的安裝與配置

IP: 192.168.1.253

環(huán)境:CentOS 6.6、JDK1.8、 MySQL5.6、SonarQube6.3

準(zhǔn)備工作:已安裝JDK1.8并配置好了環(huán)境變量

1、安裝裝MySQL5.6

wget http://repo.mysql.com//mysql-community-release-el6-5.noarch.rpm
yum install mysql-community-server
service mysqld start
chkconfig --list | grep mysqld
mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off

用上面的命令查看到MySQL并沒(méi)有設(shè)置開(kāi)機(jī)啟動(dòng),所以需要設(shè)置開(kāi)機(jī)啟動(dòng)

chkconfig mysqld on

創(chuàng)建sonar庫(kù)和用戶(hù)并授權(quán)

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar2017'
FLUSH PRIVILEGES;

3、安裝sonarqube

cd /usr/local/src
wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.3.1.zip
unzip sonarqube-6.3.1.zip
mv sonarqube-6.3.1 /usr/local/
ln -sv /usr/local/sonarqube-6.3.1 sonarqube
ln -sv /usr/local/sonarqube/bin/linux-x86-64/sonar.sh /etc/init.d/sonar

4、配置sonarqube

vim /usr/local/sonarqube/conf/sonar.properties
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar2017
#----- MySQL 5.6 or greater
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.web.host=0.0.0.0
sonar.web.port=9090

5、為了方便遠(yuǎn)程管理,防火墻中打開(kāi)3306,9090端口

vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9090 -j ACCEPT

重啟防火墻,使端口配置生效

service iptables restart

6、啟動(dòng)SonarQube

/etc/init.d/sonar start

7、在瀏覽器輸入http://192.168.1.253:9090

登錄賬號(hào)/密碼默認(rèn): admin/admin

SonarQube代碼質(zhì)量管理平臺(tái)的安裝與配置

默認(rèn)是英文的,中文需要安裝插件(插件可以在線(xiàn)安裝也可以在官網(wǎng)下載后放到插件目錄)

SonarQube代碼質(zhì)量管理平臺(tái)的安裝與配置


安裝配置完成。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI