阿里代码扫描工具_sonar增量扫描代码

idea (65) 2023-03-25 11:05

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说阿里代码扫描工具_sonar增量扫描代码,希望能够帮助你!!!。

这是我参与 8 月更文挑战的第 25 天,活动详情查看: 8月更文挑战

检测java代码时 有两种方法 

  • 使用sonar-scanner
  • SonarLint+maven

SonarLint+maven可能对于代码耦合度比较大,而且更复杂,所以楼主推荐sonar-scanner方式 。

废话不多说 安排!

1.使用sonar-scanner扫描

1.打包

打包java项目,这里不多说。

2.新家配置文件

在src路径下建立sonar-project.properties。配置文件如下。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第1张

# 项目名称
sonar.projectKey=systemportal
sonar.projectName=systemportal
sonar.projectVersion=1.0

#代码路径
sonar.sources=./src

# class路径
sonar.java.binaries=./target/classes

# 语言格式
sonar.language=java

3.执行扫描

进入sonar-project.properties路径通过cmd执行。

sonar-scanner

以下字样为执行成功。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第2张 进入127.0.0.1:9000,可以看到bug数啦。

阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第3张

2.SonarLint+maven扫描

 1.idea安装SonarLint插件

打开File->Settings->Plugins,搜索SonarLint插件,点击安装。安装后重启idea,如果安装失败,在网上下载插件,丢到idea安装目录的plugins文件夹中。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第4张

2.配置SonarLint

配置SonarLint General Settings。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第5张

地址为安装sonarqube地址 地址一定要带 http:// 点击next后可以选择验证类型填写安装时配置的账号密码

阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第6张

3.配置SonarLint Project Settings

选择刚才配置的规则

阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第7张

4.配置springboot

pom.xml文件中添加plugin。

<plugin>
    <groupId>org.sonarsource.scanner.maven</groupId>
    <artifactId>sonar-maven-plugin</artifactId>
    <version>3.4.0.905</version>
</plugin>

5.打包扫描

mvn clean compile install
mvn sonar:sonar -Dsonar.host.url=http://xxx.xxx.xx.xx:9000  #上文配置的地址

6.查看

执行完命令后回到SonarLint Project Settings,点击search in list 选择项目。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第8张 然后就可以查看代码质量了。可以查看单个文件也可以查看文件夹。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第9张 检测的结果也可以在sonarqube中查看,访问上文配置的地址即可,看完后就可以有理由的喷一喷小弟了。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第10张

3.使用p3c规则

书接上文,还是不建议使用自带规则。字楼楼主选择了阿里出品的p3c。

1.下载sonar-p3c-pmd

sonarqube的版本号与sonar-p3c-pmd是对应的,所以需要选择好版本,楼主版本为7.6,否则会还会报es连接不上的错误。 地址:github.com/rhinoceros/…。

2.选择版本

选择合适的jar包。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第11张

3.修改配置

删除之前pmd文件,放于sonarqube-7.6\extensions\plugins中,重启服务。

3.创建p3c规则

新增配置类别。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第12张 激活配置规则 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第13张 选择资源库中的pmd(之前导入的p3c-pdm) 然后选择包中的规则激活即可,楼主这里只激活了p3c的51条。 阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第14张 设为默认即可

阿里代码扫描工具_sonar增量扫描代码_https://bianchenghao6.com/blog_idea_第15张 然后再次扫描即就是使用了新规范扫描了,是不是清爽了很多呢。

发表回复