SonarQube 代码扫描配置简单说明

2020-06-28 15:44:07 浏览数 (1)

Sonar 配置

1.点击右上角的 创建新项目

2.创建上传令牌

3.查看参考命令

Jenkins 配置

第一次使用

需要在 Jenkins 任务执行机器的 Maven settings.xml 配置插件和服务器地址,参考官方教程(参考命令图里的“Maven扫描器官方文档”): https://docs.sonarqube.org/latest/analysis/scan/sonarscanner-for-maven/

查看 maven 位置

代码语言:javascript复制
mvn -version
Apache Maven 3.0.5 (Red Hat 3.0.5-17)
Maven home: /usr/share/maven
Java version: 1.8.0_242, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-327.el7.x86_64", arch: "amd64", family: "unix"

下载 GitLab 插件略

Jenkins 任务

创建 自由风格的项目,设置拉取代码 略

jenkins 构建任务配置

sonar 不会创建 class 文件夹,可以暂时配置成 sonar 文件夹避免报错 如果多个项目用不同的setting可以用 -s 定义

代码语言:javascript复制
  -Dsonar.java.binaries=target/sonar 
  -s /usr/share/maven/conf/settings-A.xml

配置GitLab提交代码时触发任务

拷贝 GitLab webhook URL

配置GitLab提交时触发

Secret token

打开 GitLab 项目配置

配置到GitLab

保存并测试效果

效果图

效果图-指标

典型用法

右上角搜索框搜索自己动过的文件,重点关注虫子标志的地方。 或者在问题中使用过滤器筛选作者是自己的部分:

过滤器

扫描前端项目

第一次使用需安装 SonarScanner: https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/ 解压添加到环境变量后授权

代码语言:javascript复制
chmod 755 .../sonar-scanner-4.3.0.2102-linux/bin/sonar-scanner
chmod 755 .../sonar-scanner-4.3.0.2102-linux/bin/sonar-scanner-debug
chmod 755 .../sonar-scanner-4.3.0.2102-linux/jre/bin/java
# 否则会报如下错误,读取的并不是 JAVA_HOME 而是目录内的 jre
# Could not find 'java' executable in JAVA_HOME or PATH

SVN 项目常见问题

Jenkins 拉取 svn 不是最新

在路径最后加 @HEAD

E170001: Authentication required

[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.7.0.1746:sonar (default-cli) on project project-name: Error when executing blame for file xxx.java: svn: E170001: Authentication required for 'svn://ip:prot hash' -> [Help 1]

SVN blame 报错解决

配置技巧

质量配置

修改标识

0 人点赞