规范-使用sonarqube+sonarq scan+MySQL完成代码规范的检查

本文阐述了SonarQube的重要性,详细介绍了其在Windows环境下的安装步骤,包括所需工具下载、配置数据库地址及环境变量,以及如何通过sonar-scanner进行项目扫描。强调了代码规范对于项目迭代和维护的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 为什么要使用sonarqube?

如果一个公司没有一套代码规范的话,这必然会导致项目后期迭代和维护变得困难,而且会出现很多的重复代码、坏味道、有bug、有漏洞。没有代码规范,还可能由于没测试到,上线后出现一些致命的错误,如:连接没释放,占用更多内存等等..

2. 安装使用教程(Windows)

需要的工具:MySQL、sonarqube-6.7.5、sonar-scanner-3.2.0.1227-windows,我已经都配置好了,你需要下载到本地就行。

下载地址:链接:https://pan.baidu.com/s/1aWno1xDlAZ6cwEFemtmp8g  提取码:nhvo 

------------------------------

sonarq

配置conf下的db地址(需要在自己的MySQL中创建配置文件中的DB)

启动脚本
D:\Program Files\sonarqube-6.7.5\bin\windows-x86-64\StartSonar.bat


http://localhost:9000/
admin/admin

------------------------------
sonarq scan

配置环境变量

D:\Program Files\sonar-scanner-3.2.0.1227-windows

配置sonarq的地址和db地址
D:\Program Files\sonar-scanner-3.2.0.1227-windows\conf\sonar-scanner.properties

在项目根目录下创建sonar-project.properties,并在该目录下执行sonar-scanner命令,执行完sonarq就有此项目

------------------------------

3. 总结

sonarq只能检测java源代码的规范,好像是没法检查jar包。工具使用不难,重点在于开发者对规范的实施和学习,如何在公司中正确的实施起来,毕竟每个人都有自己的规范,可能使用新规范起来不太顺手,工作效率比较低等问题。

 

转载于:https://my.oschina.net/qrmc/blog/3065159

SonarQube是一个用于静态代码分析的开源平台,而SonarScanner则是SonarQube的命令行客户端,用于在本地项目上运行分析并将结果上传到SonarQube服务器。如果你想自定义扫描过程中的Properties文件配置,可以按照以下步骤操作: 1. **创建或修改`sonar-project.properties`**: - 在你的项目的根目录下,通常会有一个名为`.sonar-project.properties`的文件,这是默认的SonarScanner配置文件。你可以在这里添加或编辑你需要的配置项。 ```properties # 示例配置 sonar.sources=src/main/java sonar.java.binaries=target/classes sonar.java.libraries=lib/*.jar sonar.exclusions=**/generated/** # 避免扫描生成的代码 # 如果你想覆盖特定扫描的规则文件 sonar.scan.coverage.exclusions=**/excludedFromCoverage.txt ``` 这里的配置项包括源码目录、目标文件夹、依赖库路径等,以及自定义的排除规则。 2. **环境变量覆盖**: - 如果某些配置只适用于特定环境,你可以通过系统环境变量来设置。例如,`SONAR_SCANNER_OPTS`可以用来传递额外的参数给SonarScanner。 ```bash export SONAR_SCANNER_OPTS="-Dsonar.projectKey=myProjectKey" ``` 3. **自定义Properties文件**: - 如果需要更复杂或者跨多个项目的情况,你可以创建一个单独的Properties文件(如`mycustom.properties`),然后在`sonar-project.properties`里引用它: ```properties sonar.project.properties=relative/path/to/mycustom.properties ``` 记得在执行`sonar-scanner`命令时加上这个配置。 4. **执行扫描**: - 使用`sonar-scanner`命令扫描项目,比如: ```bash ./path/to/sonar-scanner ``` **相关问题--:** 1. 如何在SonarQube中设置全局的Properties文件? 2. SonarScanner如何读取环境变量的配置? 3. 我可以在哪些地方找到关于SonarScanner更多配置选项的帮助文档?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值