SonarQube代码质量管理平台安装及使用

一、介绍

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文件最后添加一行

vm.max_map_count=262144

执行下列代码立即生效

 /sbin/sysctl -p 

汉化

需要安装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平台,分析完成后,即可在界面上查看。

参考链接:https://mp.weixin.qq.com/s/RkCAvg2OrJkSjRT8VT0YXg

原文地址:https://www.cnblogs.com/leixs/p/13613009.html