代码审查工具,优势不少自行 google,哈哈哈🤣🤣🤣。css
以mac安装sonar为例,但只是前端安装sonar的过程,不涉及后端数据等安装。html
SonarQube 8.5.1
(注意看官网对应的版本 先决条件);java
版本 11;SonarQube
若是须要 mysql 请下载7.8版本,由于7.8版本以上的再也不支持 mysql 数据库;sonar.analysis.mode=preview
;(高版本没有使用数据库的话,直接是预览模式)/usr/local/sonarqube-8.5.1.38104/logs/sonar.log
;/usr/local/sonarqube-8.5.1.38104/conf/sonar.properties
JDK下载网址前端
通常下载社区版便可,有条件可选择其它;mysql
/usr/local
;/usr/local/sonarqube-8.5.1.38104/bin/macosx-universal-64
;./sonar.sh start
启动服务./sonar.sh status
查看状态./sonar.sh stop
中止服务./sonar.sh restart
重启服务chinese
,而后 install
;sonarQube
版本页面可能有部分差别,但大致安装方式是相同的;安装成功后,重启 sonarQube 服务,再次访问 http://localhost:9000/ ,便可看到中文界面;sql
下载完成:解压缩到 /usr/local
;macos
配置环境变量:后端
输入命令 vi ~/.bash_profile
,进入 bash.profile
文件,进行编辑文本模式(按 i
);bash
配置 sonar_home
、sonar_scanner_home
、path
(路径换成你的 sonarqube
与 sonar-scanner
文件所在的绝对路径),如下为例:
export SONAR_HOME=/usr/local/sonarqube-8.5.1.38104
export SONAR_SCANNER_HOME=/usr/local/sonar-scanner-4.5.0.2216-macosx
export PATH=$PATH:$SONAR_SCANNER_HOME/bin
复制代码
退出文本编辑模式(按 Esc
、:wq
),执行命令:source ~/.bash_profile
,使配置当即生效;
测试 sonar-scanner
是否安装成功,输入命令: sonar-scanner -v
,成功安装以下图:
projectKey 是惟一的
在须要 review 的项目中根目录增长文件名为 sonar-project.properties 的文件;
sonar.projectKey=
sonar.projectName=
sonar.sources=src
sonar.projectVersion=0.1.0
sonar.host.url=http://localhost:9000
sonar.login=
sonar.exclusions=**/*.less,assets/images/**,assets/less/**
复制代码
使用命令行工具进入项目的根目录执行 sonar-scanner
;
用管理账号登陆SonarQube平台(初始帐户:admin 初始密码:admin):
从质量配置菜单进入配置页面新建:
能够设置本身规则为默认规则,去激活本身想要的规则
添加规则文件的另外一种方法:能够直接复制已有规则
两种添加规则文件的区别:
新的规则文件中会有复制那个规则文件里的全部规则;
新建的方式获取规则文件:新的规则文件是空的;
复制代码
说明:js,css等几种语言只能在如今已有的规则中去激活你想要的规则,不能添加规则表中没有的规则(目前本人没有找到自定义规则方法),java等语言能经过上传本身定义的规则文件进行自定义规则。
复制代码
查看某种语言已有的规则:
在【代码规则】中选择【语言】能够查看如今已有的规则列表中的全部规则:
sonarQube 配置文件目录: /usr/local/sonarqube-8.5.1.38104/conf/sonar.properties
若是须要配置数据库仍是其它的参数,打开上面的文件:
...
#--------------------------------------------------------------------------------------------------
# DATABASE
#
# IMPORTANT:
# - The embedded H2 database is used by default. It is recommended for tests but not for
# production use. Supported databases are Oracle, PostgreSQL and Microsoft SQLServer.
# - Changes to database connection URL (sonar.jdbc.url) can affect SonarSource licensed products.
# User credentials.
# Permissions to create tables, indices and triggers must be granted to JDBC user.
# The schema must be created first.
#sonar.jdbc.username=
#sonar.jdbc.password=
sonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin
...
复制代码
以上,也是各类百度、各类 google ,又踩不少坑写出来的,若有更好解决方案,欢迎指导。