PS: 本文主要以学习记录为主,希望能给刷到这篇文章的人一点帮助,不喜勿喷哦
首先默认本地已有了Java JDK环境
一、准备SonarQube
下载地址:https://www.sonarqube.org/downloads/
建议下载7.0版本,(进入下载页后往下拉),因为这个版本支持Java JDK 1.8,最新的SonarQube需要JDK11以上
下载完成后解压,在终端进入到macosx-universal-64目录
执行 ./sonar.sh start命令
出现这两行,一般是启动成功了,打开浏览器,输入http://localhost:9000 可以访问相关页面,登录账号密码默认都是admin,首次登录有个需要设置弹框,可以选择跳过。
页面访问不到的话,可以在logs文件夹下查找相关报错信息
二、准备sonar-scanner
sonar-scanner只是手段之一,感觉这个比较好用一点,有错误日志提醒
下载地址https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/
下载完成后,把sonar-scanner所在的bin目录,配置到环境变量中
三、配置准备扫描的代码工程
在代码所在的文件夹的根目录,新建sonar-project.properties文件 (与App同级),然后在文件中填写以下内容
#sonar.projectKey和sonar.projectName一般是项目名
sonar.projectKey=demoProject
sonar.projectName=demoProject
sonar.projectVersion=1.0
sonar.login=admin
sonar.password=admin
#sonar.sources指向Java代码目录、
sonar.sources=/Users/mayun/MyProject/Demo001/app/src/main/java
#build后产生的classes目录
sonar.java.binaries=/Users/mayun/MyProject/Demo001/app/build
sonar.language=java
sonar.sourceEncoding=UTF-8
sonar.profile=Sonar way
四、开始扫描
经过以上的三步,基本的条件应该都已准备完毕
打开终端,进入代码的根目录, 执行 sonar-scanner命令,出现SUCCESS代表扫描成功,
需要注意一下的是:
1,如果工程有.svn文件夹的话,会影响到扫描,可以先把这个文件夹给删掉
2,保证 app/build 下是有正常编译得到的文件,否则会导致扫描失败
此时顺利的话,扫描到的结果已经可以在http://localhost:9000/projects上看到了,可以侧重Bugs级别的修改
这里是以本地部署为例的,有需要的可以部署到自己的内网服务器下。