Sonar6.0应用之一:基于centos7.2安装
? ? Sonar是一個用于代碼質量管理的開源平臺,用于管理源代碼的質量,可以從多個維度檢測代碼質量
,通過插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十幾種編程語言的代碼質量管理與檢測。
? ? Sonar可以通過多種方式來實現代碼質量檢查,官方資料顯示Sonar 運行分析的方法有以下幾種方式:
SonarQube Scanner: Launch analysis from the command line
SonarQube Scanner for MSBuild: Launch analysis of .Net projects
SonarQube Scanner for Ant: Launch analysis from Ant
SonarQube Scanner for Maven: Launch analysis from Maven with minimal configuration
SonarQube Scanner for Gradle: Launch Gradle analysis
SonarQube Scanner For Jenkins: Launch analysis from Jenkins?
本系列文章重點實現命令行方式(Scanner2.8、Runner2.4)、集成Eclipse實時分析分式、Jenkins+Maven對代碼資源庫分析方式。
一、安裝版本及下載地址?
Sonarqube版本:6.0
sonar-runner版本:sonar-runner-dist-2.4
sonar-scanner版本:sonar-scanner-2.8
漢化包版本:sonar-l10n-zh-plugin-1.8.jar
數據庫版本:MySQL-5.6.32
操作系統版本:Centos7.2-最小化安裝
JDK版本:JDK1.8.0_102 64位
?
二、下載各軟件
cd?/usr/local/src wget?http://cdn.mysql.com/Downloads/MySQL-5.6/MySQL-5.6.32-1.linux_glibc2.5.x86_64.rpm-bundle.tar wget?http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.rpm wget?http://repo1.maven.org/maven2/org/codehaus/sonar/runner/sonar-runner-dist/2.4/sonar-runner-dist-2.4.zip? wget?https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.0.zip?
三、安裝軟件
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/
wget -c http://repo1.maven.org/maven2/org/codehaus/sonar-plugins/l10n/sonar-l10n-zh-plugin/1.8/sonar-l10n-zh-plugin-1.8.jar
(這是中文語言包的源碼地址:https://github.com/SonarCommunity/sonar-l10n-zh)
Sonar自帶的語言規則只有:C#,Java,JavaScript,如果需要其它語言規則可以自己下載到plugins目錄下后再重啟sonar服務就行,
下載網址:http://repo1.maven.org/maven2/org/codehaus/sonar-plugins/
?
/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 $*
添加啟動服務
轉載于:https://blog.51cto.com/newthink/1860665
總結
以上是生活随笔為你收集整理的Sonar6.0应用之一:基于centos7.2安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux下快速设定ip bond
- 下一篇: 一台服务器的黑道生涯之八 谁信任谁