windows上安装sonar并使用其分析项目
前言:
sonar有3部分组成:
1、服务端:显示分析结果和sonar相关配置,即sonarqube
2、客户端:对项目运行源代码进行运算和分析,即sonarscanner
3、数据库:存储sonar配置和代码分析结果的数据库
一、准备安装包及必要环境配置
1、安装jdk1.8,maven
2、安装mysql,参考:https://www.cnblogs.com/wulixia/p/12852311.html
3、sonarqube下载,地址:https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.6.zip
4、sonar scanner下载,地址:https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.3.0.1492-windows.zip
5、sonarqube汉化包下载
版本对应参考:https://github.com/xuhuisheng/sonar-l10n-zh
下载地址:https://github.com/xuhuisheng/sonar-l10n-zh/tags
注意:在sonarqube web上直接选择安装汉化版本,会报错,因为和sonar版本不兼容,下载指定的jar包到extensions\plugins目录下重启即可
二、SonarQube安装及配置
SonarQube 支持大多数主流关系型数据库(例如 Microsoft SQL Server, MySQL, Oracle, PostgreSQL 等),默认使用H2数据库,可以直接运行启动,此处配置MySQL数据库。
1、mysql创建数据库
1 | CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; |
2、创建用户并给用户分配权限
1 2 3 4 5 | CREATE USER 'sonar' IDENTIFIED BY 'sonar' ; GRANT ALL ON sonar. * TO 'sonar' @ '%' IDENTIFIED BY 'sonar' ; GRANT ALL ON sonar. * TO 'sonar' @ 'localhost' IDENTIFIED BY 'sonar' ; FLUSH PRIVILEGES; |
3、解压sonar的安装包sonarqube-7.6到指定的目录
切换到conf目录下,对sonar.properties文件进行配置:
切换到sonarqube-7.6\bin\windows-x86-64目录下运行启动命令
看到如下的*** is up表示启动成功
启动成功后,浏览器访问http://localhost:9000,打开界面
(上图所示已经汉化并且登录创建过一个项目)默认使用 用户名:admin 密码:admin 可以登录管理员账号。
下载好中文插件,并移动到sonarqube-7.6\extensions\plugins中,再重启sonar即可生效
重启sonarqube方法:
先使用命令:tasklist | findstr "java" 找到全部的java进程
再强制杀死所有的进程:taskkill /PID 6508 /f(6508 为 tasklist 命令查询出来的进程 PID)
三、sonar-scanner安装配置
解压sonar-scanner-cli-3.3.0.1492-windows到指定目录
切换到conf目录下,对sonar-scanner.properties进行配置
1 2 3 4 5 6 7 8 9 | sonar.host.url = http: / / localhost: 9000 sonar.sorceEncoding = UTF - 8 sonar.jdbc.username = sonar sonar.jdbc.password = sonar sonar.jdbc.url = jdbc:mysql: / / localhost: 3306 / sonar?useUnicode = true&characterEncoding = utf8&rewriteBatchedStatements = true&useConfigs = maxPerformance&useSSL = false useConfigs = maxPerformance sonar.sourceEncoding = UTF - 8 |
配置环境变量
cmd进入,输入sonar-scanner -v 出现以下信息表示安装成功
至此sonar-scanner安装成功!
四、使用sonar-scanner分析项目
1、点击‘+’号创建一个要分析的项目
2、输入项目标识,并点击‘设置’按钮
3、点击‘创建’,创建一个令牌
4、点击‘继续’按钮
5、选择项目的开发语言以及操作系统
6、下载安装sonar-scanner扫描客户端(见步骤三),已经设置过了这一步就可以忽略
7、在你的项目目录下执行扫描命令(直接复制扫描命令即可)
1 2 3 4 5 | sonar - scanner.bat - D "sonar.projectKey=test_01" - D "sonar.sources=." - D "sonar.host.url=http://localhost:9000" - D "sonar.login=78e02061dc032e860b862f1******************" |
8、分析成功后,登录http://localhost:9000,可以看到分析结果:
-----------------------------------------------------------------------------------------------------------
另外还有一种扫描代码的方法:
1、在项目根目录下新建一个sonar-project.properties文件,输入以下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | # 项目key sonar.projectKey = datacheck_test # 项目名字 sonar.projectName = datacheck_test # 项目版本 sonar.projectVersion = 1.0 # 要分析的源码的目录 多个目录用英文逗号隔开 sonar.sources = . # 新版的需要加上binaries这个属性,否则无法解析,我这里是Java项目,所以部署后有对应的classes文件夹 #sonar.java.binaries=WebRoot/WEB-INF/classes # 语言 #sonar.language=python # 编码 sonar.sourceEncoding = UTF - 8 # 指定分支 sonar.branch.name = branch |
2、启动sonarqube
3、在cmd命令中输入sonar-runner,项目会开始进行分析
4、打开http://localhost:9000/,可以看到项目分析进度,分析成功后会自动生成报告,点击对应的BUG就可以查看代码分析和解决方法了
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战