SonarQube使用手册

mvn集成sonar mvn集成sonar1.mvn已配置完成 2.本环境选用8.0版本sonarqube不支持jdk8.0,不支持MySQL(7.6以下可以),现在选用Java11,postgres12(注意多版本Java冲突问题要处理好) 3.win10环境sonar下载:链接:https://pan.baidu.com/s/1ofNQbLNwVdFMFPzW3aSfqA?pwd=vpne 提取码:vpne 汉化包:链接:https://pan.baidu.com/s/1EmvxabeJT27wnSJESsw7iA?pwd= 阅读详情
AI摘要

本文介绍如何安装SonarQube代码审查工具,并详细说明了配置过程、数据库替换及汉化方法。此外,还提供了三种不同的代码扫描实践:通过Maven、SonarScanner和Jenkins集成。

一、简介

SonarQube是一种自动代码审查工具,可检测代码中的错误,漏洞和不优雅的地方。我们知道alibaba/p3c也是一款优秀的代码规范检查工具,但是其更倾向于开发人员编程时进行实时规范检查,SonarQube则更方便于开发团队进行整体代码审查,规范管理。

二、安装SonarQube服务

1.下载安装包

SonarQube官方下载页面https://www.sonarqube.org/downloads/,这里我们下载免费的社区版:
在这里插入图片描述

(经过验证,SonarQube 7.9开始需要Java 11且不支持mysql了,所以这里我们选择7.8版本进行下载)

我们把页面拉到最下面,选择Historical Downloads

在这里插入图片描述
在这里插入图片描述
下载完成后得到一个压缩包,解压到我们平时的安装程序目录即可

2.汉化

由于低版本SonarQube自带的插件商店没有对应的汉化版本,这里我们自己下载汉化插件。

下载地址https://github.com/xuhuisheng/sonar-l10n-zh/releases,下载下方的jar包即可
在这里插入图片描述
下载完成之后,我们将这个jar包放入SonarQube的安装目录下的extensions\plugins文件夹中即可。

3.创建SonarQube数据库

由于SonarQube默认使用的内嵌数据库H2,这种不适应于生产环境,所以我们替换成mysql数据库,首先创建一个名为sonar的数据库,然后在SonarQube的配置文件conf\sonar.properties中添加如下配置:
在这里插入图片描述

# 数据库连接信息
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.sorceEncoding=UTF-8
# SonarQube的web页面登录信息
sonar.login=admin
sonar.password=admin

至此,SobarQube的配置已经完成,这时候我们启动bin\windows-x86-64\StartSonar.bat即可(不同的系统平台执行相应的启动脚本)。或者可以执行此目录中的InstallNTService.bat脚本将SonarQube安装成系统服务,这样就可以直接在服务中管理了。

启动完成后,我们访问http://localhost:9000,输入配置的登录账号信息,即可进入到SonarQube web页面。

注:
执行StartSonar.bat脚本启动SonarQube后,如果不小心关闭了控制台,其实这个时候SonarQube并没有被关闭,后台还有进程在,所以下次启动时会报错,这个时候就要手动杀掉进程了。

三、在SonarQube中创建第一个测试项目

1.在SonarQube页面选择创建项目

在这里插入图片描述
2.输入项目标识和显示名称
在这里插入图片描述

3.然后点击创建令牌
在这里插入图片描述
在这里插入图片描述
这个时候我们要把这个令牌复制下来,因为后面就看不到了

4.下面选择项目的主要语言以及构建技术
在这里插入图片描述

这里项目就已经创建好了,然后可以通过不同的质量检测方式将结果推送到这个项目里来。

四、使用

下面将通过三种方式来使用SonarQube的代码扫描功能:

① Maven方式执行代码检测
② SonarScanner方式执行代码检测
③ 集成Jenkins执行代码检测

1.集成maven执行代码扫描

创建完项目后,我们选择maven方式构建,即可看到SonarQube给我们提供的maven扫描命令

mvn sonar:sonar \
 -Dsonar.projectKey=test \
 -Dsonar.host.url=http://localhost:9000 \
 -Dsonar.login=7a13de184fe9d79c59e24062d0065bd87b7064e9

进入到要扫描的代码目录,执行上面的maven命令即可,执行完毕后在SonarQube页面即可看到扫描结果。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

注:
上面的命令中有些是固定的信息,如果每次执行扫描都需要输入则显的很麻烦,这里我们可以将某些信息配置到maven的setting.xml中

<profile>
  <id>sonar</id>
  <activation>
	<activeByDefault>true</activeByDefault>
  </activation>
  <properties>
	<sonar.host.url>http://127.0.0.1:9000</sonar.host.url>
	<sonar.login>7a13de184fe9d79c59e24062d0065bd87b7064e9</sonar.login>
  </properties>
</profile>

以后直接执行mvn sonar:sonar -Dsonar.projectKey=test即可。甚至mvn sonar:sonar都可以,SonarQube会自动以maven的坐标为项目key去创建项目。

2.通过SonarScanner执行代码扫描

SonarQube提供了SonarScanner组件来帮助我们执行扫描,首先下载https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/
在这里插入图片描述

下载之后是个压缩包,解压即可,为了方便使用,我们可以将解压后的目录下的bin目录加入到环境变量中,这样可以直接使用sonar-scanner命令了(这里不再介绍环境变量的配置)。

打开SonarScanner的配置文件conf\sonar-scanner.properties,做如下修改:
在这里插入图片描述

进入到待扫描的项目目录下,新建sonar-project.properties文件,内容如下:

sonar.projectKey=test
sonar.projectName=test
#sonar.projectVersion=1.0
#sonar.sources=./src
sonar.sourceEncoding=UTF-8
#sonar.language=java
sonar.java.binaries=.

然后再命令行执行sonar-scanner即可。

3.集成Jenkins执行代码扫描

Jenkins作为一个开源的、提供友好操作界面的持续集成(CI)工具,广受大家的喜爱,Jenkins提供了SonarQube扫描插件可以方便的让我们直接扫描代码仓库中的代码质量,而前两种方式更偏向于开发人员本地去做,更依赖开发人员的自觉性,而使用Jenkins的方式则更方便对整个团队进行 Code Review,更方便的进行规范管理。

①.首先需要安装SonarQube Scanner插件,系统管理 > 插件管理,搜索SonarQube Scanner插件并安装;安装后进入到系统管理 > 系统配置 > SonarQube servers,添加SonarQube服务器

在这里插入图片描述

②.点开高级,添加固定配置信息
在这里插入图片描述

保存并应用。至此,Jenkins配置完毕。

③.现在我们新建一个任务测试一下:

在这里插入图片描述

④.然后输入代码仓库地址,
在这里插入图片描述

⑤.然后选择构建步骤,
在这里插入图片描述

⑥.然后添加如下构建参数,
在这里插入图片描述

最后保存即可。

这样我们当我们执行Jenkins的立即构建后即可在SonarQube上面看到扫描结果。

附

SonarQube默认支持匿名推送检测结果,即不需要传递令牌即可推送到SonarQube服务器,这样很不安全,我们用下面的方式关掉匿名推送的通道:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

sonarqube使用教程 SonarQube是一个用于代码质量管理的开放平台。通过插件机制,SonarQube可以集成不同的测试工具,代码分析工具,以及持续集成工具。该工具可以通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。在对其他工具的支持方面,SonarQube不仅提供了对IDE的支持,可以在Eclipse和这 些工具里联机查看结果;同时SonarQube还对大量的持续集成工具提供了接口支持,可以很方便的在持续集成中使用。 阅读详情

相关推荐

SonarQube 安装、部署及配置使用

通过本文的介绍,您应该已经掌握了如何安装、部署和配置使用SonarQube。作为一款强大的代码质量管理平台,SonarQube能够帮助您及时发现并解决潜在的代码问题,提高代码质量和开发效率。希望这篇文章对您有所帮助!

乔木的博客 1万+

使用sonar进行maven项目代码质量管理

 今天突然心血来潮想来搭建sonar检测一下手上的项目代码质量, 首先当然是到sonar官网下载最新版本了, 地址在这 :http://www.sonarqube.org/downloads/    , 我下载的是SonarQube 4.0 , 然后解压, 进根目录里的bin目录下,找到对应的操作系统版本的启动文件, 双击StartSonar.bat 后看到这个界面就表示启动了默认的端口是9000...

hello 2万+

Docker搭建SonarQube

一 . SonarQube代码质量检查工具简介 Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。 支持Java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等等二十几种编程语言的代码质量管理与检测。 Sonar可以从以下七个维度检测代码质量,而作为开发人...

皮鱼的世界 2万+

maven工程使用sonar扫描代码

目录 基础环境 配置项目 配置setting.xml(与配置项目pom.xml二选一) 配置pom.xml(与配置setting.xml二选一) 执行扫描任务 查看结果 基础环境 SonarQube 8.2 maven3.3.6 jdk:1.8 配置项目 创建项目 登录后右上角+号创建新项目 填写项目名称及标识 创建token 下一步 选择项目类型 以上就已提供maven插件执行命令(注意’'是换行的意思,部分shell执行前需要删掉并去掉换行) 配置setting.xml(与配置项目pom.xml二选

Ajekseg的博客 5561

sonarqube系列一:SonarQube搭建 - docker方式

SonarQube代码审计简述代码审计指标代码坏味道bug和漏洞代码重复度单测与集成代码审计工具1.综合性的平台2.IDE辅助工具3.独立的静态分析SonarQube一 、搭建方式一:临时搭建方式二:产品化搭建(8.x以上版本)1.部署postgres数据库2.部署sonarqube2.1 创建后面需要的挂载目录,用来存储sonarqube核心数据2.2 ==修改权限==(目前最新版不需要这一步,可忽略)2.3 启动sonarqube容器二、访问三、安装插件 代码审计简述 代码审计指标 代码坏味道 bug

dabaoting的博客 2082

SonarQube使用手册:代码质量管理与实战指南

SonarQube 不是一个简单的“代码扫描工具”,而是一整套软件质量管理生态系统。从静态分析底层机制,到多语言支持,再到 CI/CD 集成与 IDE 实时反馈,它打通了从个人开发到团队协作的每一个环节。但记住:工具再强,也替代不了人的判断。定期审查规则、合理设置阈值、鼓励团队参与规则共建,才是让 SonarQube 发挥最大价值的关键。毕竟,最终我们要打造的,不是一个“零警告”的系统,而是一个可持续演进、高质量交付的技术文化。💪本文还有配套的精品资源,点击获取。

weixin_31641077的博客 554

SonarQube中文使用手册

SonarQube中文使用手册 【下载地址】SonarQube中文使用手册 《SonarQube中文使用手册》是一份全面且实用的指南,专为开发者设计,帮助他们深入了解和掌握SonarQube这一强大的代码质量管理工具。手册详细讲解了SonarQube的基本原理、安装与配置步骤,以及如何在实际开发中高效使用。此外,手册还提...

gitblog_06790的博客 439

STM32 SAI接口实战:用CubeMX快速配置多通道音频采集(附DMA优化技巧)

本文详细介绍了如何使用STM32的SAI接口通过CubeMX快速配置多通道音频采集系统,并提供了DMA双缓冲优化技巧。内容涵盖TDM模式配置、时钟同步、DMA优化及常见问题排查,帮助开发者高效实现高速数据采集应用。

weixin_42549037的博客 225

SonarQube中文使用手册下载仓库

SonarQube中文使用手册下载仓库 【下载地址】SonarQube中文使用手册下载仓库 本仓库提供《SonarQube中文使用手册》的下载资源,帮助开发者深入了解并高效使用这一代码质量管理工具。手册详细介绍了SonarQube的核心原理、安装步骤及使用教程,涵盖从环境搭建到代码静态分析的完整流程。此外,还特别讲解了如...

gitblog_06781的博客 494

大麦网回流票监控实战:如何利用sign参数和cookie实现自动抢票(避坑指南)

本文详细介绍了如何利用sign参数和cookie构建大麦网回流票监控系统,实现自动化抢票。通过分析大麦网票务系统的核心机制、获取关键身份凭证、逆向分析sign签名算法,并构建完整的监控系统,帮助用户高效捕捉回流票机会。文章还提供了实战避坑指南和合法合规的注意事项,确保系统稳定运行且符合平台规则。

weixin_28568819的博客 411

HyperLynx实战:手把手教你搞定DDR4信号完整性仿真(附ODT与终端电阻配置避坑)

本文详细介绍了使用HyperLynx进行DDR4信号完整性仿真的实战技巧,重点解析了ODT配置与终端电阻优化的黄金法则。通过模型准备、拓扑构建、ODT扫描等关键步骤,帮助硬件工程师规避常见设计陷阱,提升高速数字电路设计的效率与可靠性。

weixin_30861797的博客 638

sonarqube使用手册

目录系统配置创建用户项目管理Rules配置登录Sonar查看issue将Issue指派给开发人员处理Issue写评论 系统配置 创建用户 使用管理员admin/admin登录。 SCM:配置软件控制器。上文已经提到的配置项。比如:svn、git等等 项目管理 管理员登录。 一般都会把项目设置为私有: 给某些开发人员设置使用项目的权限: 想给开发人员什么权限,就在对应的权限上打√就行。 Rules配置 登录Sonar查看issue 使用用户admin/admin登录。 将Issue指派给开发人员

weixin_42412601的博客 4891

matlab中高频变压器怎么找,干货|手把手教你绕制高频变压器

原标题:干货|手把手教你绕制高频变压器绕制一个变压器所需材料:磁芯、骨架、各种铜线、麦拉胶带。变压器参数:磁芯:EE22原边:134T(1-3脚),辅助:32T(5-4脚),输出:15T(10-9脚)原边电感:1380±10%uH漏感:≤44uH引脚分布图: 特别注意:绕制方法为网上下载,其中变压器绕制方法是对的,但其中存在着很多问题(比如,正规变压器的绕组的头和尾是要添加铁氟龙套管的,每一层之间...

weixin_30895121的博客 2123

SonarQube中文使用手册下载仓库:项目核心功能/场景

SonarQube中文使用手册下载仓库:项目核心功能/场景 【下载地址】SonarQube中文使用手册下载仓库 本仓库提供《SonarQube中文使用手册》的下载资源,帮助开发者深入了解并高效使用这一代码质量管理工具。手册详细介绍了SonarQube的核心原理、安装步骤及使用教程,涵盖从环境搭建到代码静态分析的完整流程。...

gitblog_06758的博客 800

Cesium 模拟飞机坠毁功能

Cesium 模拟飞机坠毁功能,粒子模拟

QQhelphelp的博客 1068

信息安全管理与评估赛题解析-单机取证(含环境)

链接:https://pan.baidu.com/s/1OMzIq884dW2vAiUp0k2Ppg。链接:https://pan.baidu.com/s/1i5daMqhD53wYeQ6hYzRK6Q。链接:https://pan.baidu.com/s/1QFAjdQZK4sJ-gGRP42XPKA。链接:https://pan.baidu.com/s/1BSXvqN2ZGCQXewgFULoeyQ。链接:https://pan.baidu.com/s/1g9zu5ngBz_KMjW1eBMkJAw。

Brucye 1833

SonarQube中文使用手册:掌握代码质量管理的不二之选

SonarQube中文使用手册:掌握代码质量管理的不二之选 【下载地址】SonarQube中文使用手册 《SonarQube中文使用手册》是一份全面且实用的指南,专为开发者设计,帮助他们深入了解和掌握SonarQube这一强大的代码质量管理工具。手册详细讲解了SonarQube的基本原理、安装与配置步骤,以及如何在实际开...

gitblog_06780的博客 341

使用Simulink进行无刷电机霍尔传感器信号处理电路的仿真

位置检测:霍尔传感器可以检测转子的位置,这对于实现无刷电机的电子换向至关重要。提高效率:通过准确的位置信息,可以优化电机的工作状态,提高效率和性能。通过上述步骤,我们简要介绍了如何基于Simulink实现无刷电机霍尔传感器信号处理电路的仿真。

MHD0815的博客 430

sonarqube的基本使用

参考博客 sonarqube使用手册

v慕言的博客 183

【MATLAB】嵌入式ADC/DAC控制工程

摘要:本文针对嵌入式ADC/DAC应用中存在的量化误差、采样噪声、输出漂移等问题,提出基于MATLAB的仿真优化方案。通过构建完整的ADC/DAC仿真模型,实现了采样建模、数字滤波、误差校准和闭环控制仿真。方案采用滑动平均滤波抑制ADC噪声,双校准参数补偿DAC固有误差,并将算法轻量化移植至STM32平台。实测表明,该方案使ADC采样波动从±25mV降至±5mV,DAC输出偏差从42mV降至18mV,显著提升了模拟量交互精度和系统稳定性。整套方案资源占用低,适配各类嵌入式高精度控制场景,具有较高的工程应用价

unber的博客 646

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

SonarQube篇-SonarLint+IDEA使用手册

一 手册说明 本篇使用手册是一篇关于SonarLint插件的使用手册,详细阐述了SonarLint绑定服务器、SonarLint分析项目的使用方法,手册仍然处于不断完善的过程中。 二 SonarLint简介 官网地址: https://www.sonarlint.org/ SonarLint是一个IDE插件,可帮助开发人员在编写代码时检测和修...

鬼刺 3975

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

SonarQube篇-SonarLint+Eclipse使用手册

一 手册说明 本篇使用手册是一篇关于 SonarLint 插件的使用手册,详细阐述了 SonarLint 绑定服务器、SonarLint 分析项目的使用方法,手册仍然处于不断完善的过程中。 二 SonarLint简介 官网地址: https://www.sonarlint.org/ SonarLint是一个IDE插件,可帮助开发人员在编写代码时检测和修...

鬼刺 2485

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

SonarQube Licensecheck 插件安装与使用手册

SonarQube Licensecheck 插件安装与使用手册 1. 目录结构及介绍 SonarQube Licensecheck插件的GitHub仓库遵循标准的Git仓库结构。以下是其主要目录和关键文件的简介: src: 包含了插件的核心源代码。 这里会有Java类,用于实现扫描依赖项和验证许可证的功能。 docs: 文档相关的文件夹,可能存放有开发过程中的说明或指南。 CHA...

gitblog_00048的博客 398

ecoCode项目使用手册

ecoCode项目使用手册 1. 目录结构及介绍 ecoCode 是一个致力于减少软件在代码层面环境影响的集体项目。以下是该项目的基本目录结构及重要文件说明: . ├── CHANGELOG.md # 版本更新日志 ├── CODE_STYLE.md # 代码风格指南 ├── CONTRIBUTING.md # 贡献者指南 ├── INSTALL.md # 安装...

gitblog_00317的博客 996

SonarQube7.8 安装及使用

SonarQube安装、SonarQube使用、SonarQube整合jenkins

kzdwts的博客 6272

jenkins+sonarqube+SonarQube Scanner

前言 上篇文章中已经介绍了jeknins,sonarqube,SonarQube Scanner安装,这里就不做描述了。本文主要介绍集成环节。 1. 安装Jenkins 下载安装包,这里我们下载war包 https://jenkins.io/download/ 运行jenkins.war的方式有两种: 第一种:将其放到tomcat中运行(放到webapps目录下,启动tomca...

一束阳光 8808
上一篇: Spring Boot 解决跨域问题的 3 种方案
下一篇: Windows10修改Docker镜像存储目录
淋雨一直走啊
博客等级 码龄11年 39粉丝 46原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值