文章目录

  • 前言
  • 1、sonarqube
  • 2、IDEA插件安装:sonarlint
  • 2.1、测试结果:
  • 2.2、检测规范(可以通过勾选控制)
  • 3、sonar-scanner
  • 4、p3c
  • 5、具体安装部署与使用
  • 5.1、下载并解压
  • 5.3、安装数据库
  • 5.4、准备数据
  • 5.5、修改配置文件
  • 6、启动
  • 7、登录
  • 8、安装插件

前言

  • sonar 是一款代码检测工具,如果在开发过程中,想监控组员的代码书写是否正规,可以使用该工具。

1、sonarqube

  • sonarqube: 是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码格式上的问题。
  • 它可以与您现有的工作流程集成,以实现跨项目分支和提取请求的连续代码检查。同时也提供了可视化的管理页面,用于查看检测出的结果。
  • 同时 sonarqube 提供了一系列的规范(大概有300多条,不建议使用),可以通过勾选从而设置在检测时是否使用。

windows sonarqube postgresql部署 sonarqube安装教程_intellij-idea

  • 也就是说 sonarqube 只是显示平台,需要与代码连接才能够扫描。

2、IDEA插件安装:sonarlint

  • sonarlint 是 idea 的插件,sonarlint 本身也有检查的功能,可以在 idea 中检测代码,也可以在 idea 中配置检测的规范,同时,sonarlint 也可以连接 sonarqube,只不过只是用 sonarqube 的前台页面。

2.1、测试结果:

windows sonarqube postgresql部署 sonarqube安装教程_java_02

2.2、检测规范(可以通过勾选控制)

windows sonarqube postgresql部署 sonarqube安装教程_威胁分析_03

3、sonar-scanner

  • sonar-scanner插件: 用于扫描代码与连接 sonarqube,使用 sonar-scanner 插件就可以将本地代码连接 sonarqube 并检测出结果,并显示在 sonarqube 中。
  • 注意:sonarqube 检测代码 java 代码有两种方式,一种使用 sonar-scanner,一种使用 sonarlint,具体可以参照下文。

4、p3c

  • p3c: 阿里巴巴指定的代码格式规范 共50条左右 可以在 idea 中使用 也可以将配置导入进 sonarqube 然后使用 sonarqube 检测
  • 注意: 建议使用 p3c 规则,sonar 规则是在太复杂,什么代码都能给你怼出错误。

5、具体安装部署与使用

5.1、下载并解压

  • 保整预先安装 JDK

windows sonarqube postgresql部署 sonarqube安装教程_java_04

5.3、安装数据库

  • 根据自己需要安装数据库。

5.4、准备数据

  • 新建 sonar 库与 sonar 用户。

windows sonarqube postgresql部署 sonarqube安装教程_intellij-idea_05

5.5、修改配置文件

windows sonarqube postgresql部署 sonarqube安装教程_java_06

windows sonarqube postgresql部署 sonarqube安装教程_测试覆盖率_07

#sonar用户页面登录账号密码
sonar.login=root
sonar.password=root
 
#mysql连接与mysql账号密码
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
  • 注意: 如有以下报错 请注意mysql版本和mysql的账号密码
2021.04.06 10:50:09 WARN  app[][o.e.t.n.Netty4Transport] exception caught on transport layer [[id: 0x29e09cd2, L:/127.0.0.1:52892 - R:/127.0.0.1:9001]], closing connection
java.io.IOException: 远程主机强迫关闭了一个现有的连接

6、启动

  • 选择 windows 版本

windows sonarqube postgresql部署 sonarqube安装教程_intellij-idea_08

  • 按顺序点击 bat 脚本

windows sonarqube postgresql部署 sonarqube安装教程_威胁分析_09

  • 出现以下字样,为安装成功

windows sonarqube postgresql部署 sonarqube安装教程_测试覆盖率_10

7、登录

windows sonarqube postgresql部署 sonarqube安装教程_java_11

8、安装插件

windows sonarqube postgresql部署 sonarqube安装教程_测试覆盖率_12

  • 下载好 jar 包后将 jar 包复制到 sonarqube-7.6\extensions\plugins 中并重启,完事手收工。

windows sonarqube postgresql部署 sonarqube安装教程_intellij-idea_13