1、前言
最近在做静态代码扫描,网上资料不全,有的还要收费,这里记录下整合流程
2、安装
版本选择,SonarQube选<=7.8的,因为大部分jdk都是8版本,7.9起不支持jdk8,需要配置下数据库,数据库配置的时候连接写完整,要不连不上,我这里用的docker7.1版本。
安装SonarQube(相当于前台页面)
安装sonarscanner(扫描器)
3、效果
1、登录页 默认密码是admin/admin
4、整合
我们这里项目是springboot,这里以springboot为例,在要扫描的项目里引入连接信息,位置和你项目名同级即可
<artifactId>demo</artifactId>
<properties>
<sonar.host.url>http://localhost:9000/</sonar.host.url>
<sonar.login>admin</sonar.login>
<sonar.password>admin</sonar.password>
<sonar.inclusions>**/*.java,**/*.xml</sonar.inclusions>
</properties>
依赖引入: 依赖版本提前制定,我用的是3.9.0.2155
<dependency>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${sonar.version}</version>
</dependency>
插件引入:这里标签不全,我是为了展示完整标签层级,使用时候注意
<!-- 静态代码检查-->
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${sonar.version}</version>
</plugin>
</plugins>
</build>
5、使用
直接双击
6、生成报告
等maven跑完就能在9000端口后台看到报告了
7、其他
默认SonarQube不强制鉴权,不登录也能查看扫描结果,按下图处理下就完事了