Sonar简介:
Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质量,能够支持包括C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测。html

一、系统环境依赖
1.1 java 环境
jdk 1.8下载传送门java

jdk安装完后,须要进行环境变量的配置

mac打开环境配置文件的命令

cd ~
 touch .bash_profile
 open -e .bash_profile#jdk

export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home

export CLASSPATH=.:sonarqube 扫描java代码 sonar代码检查java_java{JAVA_HOME}/lib/tools.jar export PATH=sonarqube 扫描java代码 sonar代码检查java_java_02PATH

export JAVA_HOME=$JAVA_8_HOME

⚠️注意

JDK要求
一、sonar最新版本的(从7.9.1开始)须要java 11+
二、若是安装的是Jdk 1.8 ,下载7.9.1以下即可,本人下载的是7.7sql

1.2、mysql环境,也可使用默认数据库,不过会一直有警告
mysql 下载传送门数据库

mysql 安装完后,须要进行环境变量的配置macos

#mysql
 export PATH=${PATH}:/usr/local/mysql/bin


MySQL建立sonar系统须要的登录用户,sonar系统的登录用户不能是root,所以须要建立一个新的用户
建立sonar数据库和用户编程

mysql -u root -p
 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;


⚠️注意
若是不在这个范围的版本会报错或者出现问题。(我下载的是V5.7.25)

oracle

mysql要求
=5.6 && < 8.0编程

二、SonarQube安装
SonarQube下载传送门

三、sonar-scanner扫描器安装
简介: Sonar-Scanner是Sonar中真正用于实现代码扫描的工

1、一种方式是能够经过终端命令
brew install sonar-scanner

2、下载压缩包(我选择)
https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/

四、配置sonar
为了方便使用,咱们一般把sonar放到/usr/local目录下

mv /Downloads/sonarqube-7.2.1 /usr/local
 mv /Downloads/sonar-scanner-4.0.0.1744-macosx /usr/local/


环境变量配置

#sonar
 export SONAR_HOME=/usr/local/sonarqube-7.2.1
 export SONAR_RUNNER_HOME=/usr/local/sonar-scanner-4.0.0.1744-macosx
 export PATH=SONAR_RUNNER_HOME/bin:$JAVA_HOME/bin
 /usr/local/sonarqube-7.2.1/conf/sonar.properties配置
 sonar默认端口为9000#sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useCnotallow=maxPerformance&useSSL=false

刚刚建立的sonarQube用户

#sonar.jdbc.username=sonar

建立用户对应的密码

#sonar.jdbc.password=sonar

设置编码格式为UTF-8

#sonar.sorceEncoding=UTF-8

sonar登录用户名

sonar.login=admin

sonar登录密码

sonar.password=admin
 /usr/local/sonar-scanner-4.0.0.1744-macosx/conf/sonar-scanner.properties配置#----- Default SonarQube server
 sonar.host.url=http://localhost:9000
 #----- Default source code encoding
 sonar.sourceEncoding=UTF-8


五、启动服务
cd /Users/user/Desktop/sonarqube-7.2.1/bin/macosx-universal-64
启动服务

./sonar.sh start
中止服务

./sonar.sh stop
从新启动服务

./sonar.sh restart
六、访问服务(访问localhost:9000)
作完以上操做,不出意外就会看到sonar界面了

由于之前安装过mysql,防止版本不一致,于是准备彻底清理卸载了mysql,也遇到了几个坑

彻底卸载mysql的命令

sudo rm /usr/local/mysql
 sudo rm -rf /usr/local/mysql*
 sudo rm -rf /Library/StartupItems/MySQLCOM
 sudo rm -rf /Library/PreferencePanes/My*
 rm -rf ~/Library/PreferencePanes/My*
 sudo rm -rf /Library/Receipts/mysql*
 sudo rm -rf /Library/Receipts/MySQL*
 sudo rm -rf /var/db/receipts/com.mysql.*


其实不同的安装方式有些东西的存储位置(usr/local/mysql)不一样,删除完检查一下下面这些文件是否删除了,没有的话则删除掉:
/usr/local/Cellar 里的mysql文件
/usr/local/var 里的mysql文件
/tmp 里的mysql.sock, mysql.sock.lock, my.cnf文件
pid文件和err文件都在/usr/local/var/mysql里确保删除了
brew安装的安装包存储在/usr/local/Library/Cache/Homebrew也可以一并删除
执行brew cleanup

遇到的坑⚠️

1.安装mysql时一定要注意安装到最后的弹窗中的默认密码,记下来,否则后面忘记很难办

2.登录了mysql,mysql 报错ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executin,这里直接重置密码即可

1、 修改用户密码
mysql> alter user ‘root’@‘localhost’ identified by ‘youpassword’;
或者
mysql> set password=password(“youpassword”);
2、刷新权限
mysql> flush privileges;
问题解决

3.报错:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’

解决: 你需要再使用mysql之前启动mysql server

4.mysql -u root -p无法启动mysql

解决:

/usr/local/mysql/bin/mysql -u root -p //先试试用mysql的具体路径命令
alias mysql=/usr/local/mysql/bin/mysql //然后重新命名
mysql -u root -p //再用这个命令即可
5.第一次访问网页端失败

解决:查看隐私对防火墙的设置,关闭即可解决