SonarQube的下载安装与使用

Sonar的功能:是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量

  1. 糟糕的复杂度分布
  2. 重复
  3. 缺乏单元测试
  4. 不遵循代码标准
  5. 没有足够的或者过多的注释
  6. 潜在的bug
  7. 糟糕的设计

1、下载与安装-window版SonarQube

SonarQube的下载安装与使用

下载后解压,目录为:

SonarQube的下载安装与使用

2.文件配置

SonarQube\sonarqube-7.7\conf

sonar.properties文件的配置

SonarQube的下载安装与使用

注:

sonarqube从7.8起,不再支持mysql

sonarqube从7.9起,不再支持jdk11以下版本

Mysql数据库配置:

版本要求:MySQL >=5.6 && < 8.0 (不包含8.0)

#sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

#sonar.jdbc.username=root

#sonar.jdbc.password=root

 

Oracle数据库配置:

版本要求:Oracle 11g/12c

sonar.jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521/orclpdb

sonar.jdbc.username=sonarqube

sonar.jdbc.password=sonarqube

sonar.jdbc.driverClassName:oracle.jdbc.driver.OracleDriver

 

 

注意:使用Oracle数据库连接,需要把Oracle驱动包复制到目录:SonarQube\sonarqube-7.7\extensions\jdbc-driver\oracle

SonarQube的下载安装与使用

3. 启动SonarQube

运行StartSonar.bat文件

SonarQube的下载安装与使用

运行成功:

SonarQube的下载安装与使用

访问:

用浏览器访问 http://localhost:9000,进入sonarqube页面

默认账号密码:admin/admin

SonarQube汉化操作:

SonarQube的下载安装与使用

把下载的中文包放在目录:SonarQube\sonarqube-7.7\extensions\plugins 里,重启SonarQube才生效。

4. sonar-scanner下载安装

1)下载完后解压

SonarQube的下载安装与使用

2)修改conf目录下的sonar-scanner.properties文件添加如下配置:

SonarQube的下载安装与使用

#sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

 

sonar.jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521/orclpdb

sonar.jdbc.username=sonarqube

sonar.jdbc.password=sonarqube

#sonar.jdbc.driverClassName:oracle.jdbc.driver.OracleDriver

 

#sonarqube地址

sonar.host.url=http://localhost:9000

 

3)配置sonar-scanner的环境变量bin目录

cmd 命令验证: sonar-scanner -version

SonarQube的下载安装与使用

5. 使用

1) 使用SonarScanner扫描

1-1) 打开要进行代码分析的项目根目录,新建sonar-project.properties文件, 并添加以下内容

SonarQube的下载安装与使用

sonar.projectKey=my:project

sonar.projectName=google-translater-master

sonar.projectVersion=1.0

sonar.sources=D:/Code/shenzhoutaiyue/ProjectCode/google-translater-master/src

sonar.java.binaries=D:/Code/shenzhoutaiyue/ProjectCode/google-translater-master/target/classes

 

1-2)cmd窗口进入到项目的根路径,执行下面命令即可:

sonar-scanner

扫描成功:

SonarQube的下载安装与使用

 

2) 整合maven实现代码扫描

2-1)整合maven需在maven的settings.xml中增加如下配置,即我们的jdbc驱动,数据库用户密码以及相关的sonar.host.url链接。

SonarQube的下载安装与使用

<profile>

        <id>sonar</id>

        <activation>

            <activeByDefault>true</activeByDefault>

        </activation>

        <properties>

<sonar.jdbc.url>jdbc:oracle:thin:@127.0.0.1:1521/orclpdb</sonar.jdbc.url>

            <sonar.jdbc.driver>oracle.jdbc.driver.OracleDriver</sonar.jdbc.driver>

            <sonar.jdbc.username>sonarqube</sonar.jdbc.username>

            <sonar.jdbc.password>sonarqube</sonar.jdbc.password>

            <sonar.host.url>

              http://localhost:9000 <!-- Sonar服务器访问地址 -->

            </sonar.host.url>

        </properties>

    </profile>

<activeProfiles>

        <activeProfile>sonar</activeProfile>

    </activeProfiles>

2-2)在idea的Terminal窗口(dos窗口一样),进入需要扫描的代码的根目录,执行命令mvn sonar:sonar

 

 

3) sonarlint sonarqube 使用

3-1)idea : file ->settings -> Plugins 搜索sonarlint install restart,安装结束。

默认采用的是sonarlint自己的规则,可以在rules查看对应规则和修改

 

SonarQube的下载安装与使用

3-2)右击项目名称 选择SonarLint 点击分析,则会在sonarlint 中显示对于的分析结果

SonarQube的下载安装与使用

6. 查看分析结果

SonarQube的下载安装与使用

SonarQube的下载安装与使用