TA的每日心情 | 无聊 昨天 09:34 |
---|
签到天数: 1052 天 连续签到: 2 天 [LV.10]测试总司令
|
一、介绍
Sonar全称SonarQube是一个用于代码质量管理的开源平台,用于管理源代码的质量。
二、sonar安装
搭建一个数据库postgres
docker run --name db -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres:12
搭建sonarqube
docker run --name sq --link db -e SONARQUBE_JDBC_URL=jdbc:postgresql://db:5432/sonar -e SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar -p 9001:9000 -d sonarqube
说明:
--name 指定容器名称
--e 指定数据库账号和密码
--d 指定版本
--link 指定连接的数据库
--p 端口映射(后者为docker容器的端口,前者为服务器的端口)
sonar 环境搭建问题
常见错误
- max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
复制代码 说明最新版本sonarqube需要内存大小不低于262144,那首先要保证运行环境的内存大小不低于3G。
找到/etc/sysctl.conf文件最后添加一行。
执行下列代码立即生效
汉化
需要安装Chinese Pack插件,需要登陆,英文版面可以对照着点击:
三、Soanr使用
第一步点击登陆,成功登陆后界面如下,点击项目名称可以查看代码质量详情,继续下钻可以查看问题代码详情,如下图所示:
四、Sonar项目支持(以java为例):
1. 在sonar上构建一个项目
输入项目标识及显示名称后,点击设置
输入令牌名称,点击创建,而后挨个点击项目的类型,即可获得扫描命令:
2. 集成sonar maven插件
要想让java项目支持mvn 命令,首先要集成sonar maven插件
- <plugin>
-
- <groupId>org.codehaus.mojo</groupId>
-
- <artifactId>sonar-maven-plugin</artifactId>
-
- <version>3.4.0.905</version>
-
- </plugin>
复制代码 切换到该pom的目录下,执行上述命令:
- mvn sonar:sonar -Dsonar.projectKey=test_one -D sonar.host.url=http://*.*.*.*:9001 -D sonar.login=7b**********f0e2 -s D:\apache-maven-3.5.4\conf\settings.xml
复制代码 说明:
--D 指定推送分析结果的服务器及登陆的权限
--s 指定mavne的配置文件(因为我本地经常遇到错误,后面加上就好了)
此时,代码开始分析,并将结果推送到sonar平台,分析完成后,即可在界面上查看。
|
|