Mac本地搭建Sonar系统(代码自动检查)

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=.: J A V A H O M E / l i b / d t . j a r : {JAVA_HOME}/lib/dt.jar: JAVAHOME/lib/dt.jar:{JAVA_HOME}/lib/tools.jar export PATH= J A V A H O M E / b i n : {JAVA_HOME}/bin: JAVAHOME/bin:PATH

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= P A T H : PATH: 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&useConfigs=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.第一次访问网页端失败

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

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值