Android studio sonar代码检查 sonar代码检查原理_JAVA

Sonar 代码质量管理平台

检测结果图

Android studio sonar代码检查 sonar代码检查原理_JAVA_02


检测结果从下面几个方面展示:

  • Bug:必须要解决的
  • 漏洞:关注
  • 热点:关注
  • 异味:关注
  • 覆盖率:了解
  • 重复:优化

sornar简介

Sonar(SonarQube)是一个开源平台,用于管理源代码的质量。

Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。

支持25+编程语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等

sornar架构图

Android studio sonar代码检查 sonar代码检查原理_安全性测试_03

SonarQube我们可以检测出项目中潜在bug,重复代码,代码规范,安全性漏洞等问题, 并通过SonarQube web UI展示出来。

sornar如何工作

sonar静态代码扫描由2部分组成:sonarQube平台,sonar-scanner扫描器。
sonarQube: web界面管理平台

1)展示所有的项目代码的质量数据。

2)配置质量规则、管理项目、配置通知、配置SCM等。

sonarScanner: 代码扫描工具

1)专门用来扫描和分析项目代码。支持20+语言。

2)代码扫描和分析完成之后,会将扫描结果存储到数据库当中,在sonarQube平台可以看到扫描数据。

sonar环境搭建

安装sonarQube和sonarScanner

sonarQube:链接 sonarScanner(mac版本):链接

下载好以后解压在同一个目录下

Android studio sonar代码检查 sonar代码检查原理_系统安全_04

安装JDK

JDK:链接

配置环境变量

1、获取java安装路径:/usr/libexec/java_home -V

Android studio sonar代码检查 sonar代码检查原理_系统安全_05

2、打开配置文件:vi ~/.bash_profile(mac如何编辑文件:按 i 键编辑;退出vim编辑器:先按下 esc 键,不保存并退出 :按 q! 后 enter 回车键盘、保存并退出 :按 wq 后 enter 回车键盘)

Android studio sonar代码检查 sonar代码检查原理_安全性测试_06

3、配置
java路径:第一步获取的路径
sonarqube路径:你存放的文件路径
sonar-scanner路径:你存放的文件路径

# HomeBrew
# Java
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.0.5.jdk/Contents/Home
export CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:JAVA_HOME/bin

# Sonar
export SONAR_HOME=/Users/xxx/xxx/xxx/sonar/sonarqube-9.9.0.65466
export PATH=$PATH:$SONAR_HOME/bin
export SONAR_SCANNER_HOME=/Users/xxx/xxx/xxx/sonar/sonar-scanner-3.3.0.1492-macosx
export PATH=$PATH:$SONAR_SCANNER_HOME/bin
# HomeBrew END

4、确保配置生效
命令:source ~/.bash_profile

sonar使用

启动sonarqube,找到sonarqube-9.9.0.65466 > bin > macosx-universal-64
  • ./sonar.sh start
  • ./sonar.sh stop
  • ./sonar.sh restart

Android studio sonar代码检查 sonar代码检查原理_JAVA_07

第一次打开会久一点,会先初始化,然后看到登录界面(账号密码默认:admin/admin)

Android studio sonar代码检查 sonar代码检查原理_安全性测试_08

登录进去界面如何加载中文包(二种方法)

1)有Install按钮的执行如下操作即可

Android studio sonar代码检查 sonar代码检查原理_系统安全_09


2)没有Install的下载jar包,汉化包:链接 存放路径:sonarqube-9.9.0.65466 > extensions > plugins

执行sonar-scanner命令,首先在需要检测的项目下新增文件 sonar-project.properties

Android studio sonar代码检查 sonar代码检查原理_代码复审_10

用户令牌如何生成

Android studio sonar代码检查 sonar代码检查原理_JAVA_11

定位到检测的项目目录下,执行命令:sonar-scanner

Android studio sonar代码检查 sonar代码检查原理_系统安全_12

出现EXECUTION SUCCESS代表检测成功,就可以在http://localhost:9000/上看到检测的结果

Android studio sonar代码检查 sonar代码检查原理_JAVA_13

检测结果

Android studio sonar代码检查 sonar代码检查原理_代码复审_14

总结

1、链接无效可以评论或者私信
2、jdk需要17版本
3、sonar-scanner命令无效,检查自己配置的路径是否正确
4、./sonar.sh start启动后,http://localhost:9000登录无响应,重复执行命令2次,出现SonarQube is already running等待10秒即可
5、其他问题留言讨论