当前位置: 代码迷 >> 综合 >> SonarQube---Windows版安装及使用教程
  详细解决方案

SonarQube---Windows版安装及使用教程

热度:94   发布时间:2023-11-24 04:58:42.0

一.简介

SonarQube 是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量。 通过插件形式,可以支持众多计算机语言,比如 java, C#, goC/C++, PL/SQL, Cobol, JavaScrip, Groovy等。sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具来检测你的代码,帮助你发现代码的漏洞,Bug,异味等信息。

Sonar 不仅提供了对 IDE 的支持,可以在 EclipseIntelliJ IDEA 这些工具里联机查看结果;同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar

二.安装SonarQube

1、下载

  • 官网传送门
  • 官网社区传送门
  • 8.5社区版下载传送门
    • 社区版基本够用,其他版本收费
    • 社区版导出的报告差强人意
  • 官网文档传送门

2、将下载好的压缩包解压到非中文路径下

3、环境准备

  • JDK

  • 数据库

    7.8版本以后不再支持MySQL,将使用PostgreSQL,大家使用的时候要注意版本,我用的是7.4

    -- 建库
    CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; 
    -- 创建用户并设置密码
    CREATE USER 'sonar'@'localhost' IDENTIFIED BY '1234'; -- 对用户进行授权操作 GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
    FLUSH PRIVILEGES;
    
  • SonarQube增加数据连接配置,修改./conf/sonar.properties

    #\sonarqube-7.2.1\conf中的sonar.properties增加数据库配置(注意数据库版本要保持一致)
    #存放sonar基本数据结构的数据库地址
    sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
    sonar.jdbc.username=test
    sonar.jdbc.password=1234
    sonar.sorceEncoding=UTF-8
    #默认登录账户
    sonar.login=admin
    sonar.password=admin
    #端口
    sonar.search.port=9009
    
  • 添加环境变量

    # SONAR_RUNNER_HOME
    D:\ProgramDevelopment\sonarqube-7.2.1
    # Path
    %SONAR_RUNNER_HOME%\bin
    
  • 汉化

    • 添加汉化jar包,将jar文件复制到Sonarqube主目录extensions/plugins文件夹内
      • jar包传送门
    • 也可以启动后再界面内下载插件来汉化(配置选项登录后才显示,英文版的按照位置来就行)
      • image-20201024171326305
  • 添加导出PDFjar包,将jar文件复制到Sonarqube主目录extensions/plugins文件夹内

  • jar包传送门

  • 修改Maven配置文件settings,在 <profiles>标签中添加如下配置:

<profile><id>sonar</id><activation><activeByDefault>true</activeByDefault></activation><properties><sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar</sonar.jdbc.url><sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver><sonar.jdbc.username>test</sonar.jdbc.username><sonar.jdbc.password>1234</sonar.jdbc.password><sonar.host.url>http://localhost:9009</sonar.host.url></properties>
</profile>
  • 启动
# 启动
打开\sonarqube-7.2.1\bin\windows-x86-64下的StartSonar.bat
# 重启
# 1.dos窗口启动的服务必须通过ctrl+c来结束
# 2.任务管理中结束所有java进程
# 3.重启SonarQube
  • 访问

    • 地址:http://localhost:9000
    • 默认用户名:admin
    • 默认密码:admin
  • 启用阿里p3c代码规范,将jar文件复制到Sonarqube主目录extensions/plugins文件夹内

    • 官方传送门
    • 已经编译好的jar包传送门
    • img
      img
  • 添加项目

    • img
    • 随意编一个令牌码输入进去并记住着码,一个码对应一个项目
      img
    • 选中语言及构建方法点击右侧的复制
      img
    • 进入项目目录并启动CMD窗口,粘贴上一步复制的内容

img
img

  • 编译完成后
    image-20201024173105463
    • 导出PDF报告
      img

三.IDEA安装SonarLint插件

  • img
  • 配置SonarQube servers
    img
  • img
  相关解决方案