十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如何对SonarQube代码质量检测整合,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联是一家集网站建设,靖安企业网站建设,靖安品牌网站建设,网站定制,靖安网站建设报价,网络营销,网络优化,靖安网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
SonarQube是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码异味。它可以与您现有的工作流程集成,以便在项目分支和拉取请求之间进行连续的代码检查。
连续代码检查,sonar可以单独使用Maven
、Gradle
推送代码检查,当然也可以在ci引擎进行代码自动检查,如: Jenkins
、Git
。
安装
为了快速启动sonarqube
实例,我们采用docker的方式。
sonarqube
默认为英文版的,检查规则为自带的,我们这里采用中文汉化,另外java
语言加入阿里p3c规则。
使用git克隆项目:
git clone https://github.com/purgeteam/sonarqube-start cd docker-start
sonar-docker-start.yml
模板如下:
# 汉化版+阿里p3c验证 version: "2" services: sonarqube: image: sonarqube ports: - "9000:9000" networks: - sonarnet environment: - sonar.jdbc.url=jdbc:postgresql://db:5432/sonar volumes: - sonarqube_conf:/opt/sonarqube/conf - sonarqube_data:/opt/sonarqube/data - sonarqube_extensions:/opt/sonarqube/extensions - sonarqube_bundled-plugins:/opt/sonarqube/lib/bundled-plugins - ./plugin/rhinoceros/sonar-pmd-plugin-3.2.0-SNAPSHOT.jar:/opt/sonarqube/extensions/plugins/sonar-pmd-plugin-3.2.0-SNAPSHOT.jar - ./plugin/sonar-l10n-zh-plugin-1.16.jar:/opt/sonarqube/extensions/plugins/sonar-l10n-zh-plugin-1.16.jar db: image: postgres ports: - "5432:5432" networks: - sonarnet environment: - POSTGRES_USER=sonar - POSTGRES_PASSWORD=sonar volumes: - ./postgres/postgresql:/var/lib/postgresql - ./postgres/postgresql_data:/var/lib/postgresql/data networks: sonarnet: driver: bridge volumes: sonarqube_conf: sonarqube_data: sonarqube_extensions: sonarqube_bundled-plugins: postgresql: postgresql_data:
使用docker-compose启动
docker-compose -d sonar-docker-start.yml up
默认会吧插件挂载进容器内部。
启动ok,查看控制台进行访问localhost:9000
,默认账号密码:admin/admin
。
默认规则配置
虽然已经集成了阿里P3C,但是使用的还是默认规则,这里我们需要设置为指定规则。
以admin账号登陆
打开 质量配置profiles
页,点击右上方的创建
按钮,创建 p3c profiles
首次创建会跳转到代码规则配置页面,刚新建的 profile 是没有激活任何规则的,需要手动激活
我们需要为刚创建的 p3c profile 激活 p3c 规则,点击【激活更多规则】
跳转到激活页面,搜索p3c,如图,都是以[p3c]
开头的规则。
批量修改->活动 p3c -> 应用 -> 成功
绑定规则成功后基本完成,我们返回质量配置
,在java
选择刚设置的p3c
设置为默认。
配置阿里P3C已经完成。
sonarqube
可以使用多种方式进行代码上传检查。 我们使用简单的Maven
触发代码检查。
添加插件
在项目pom
文件里添加sonar-maven-plugin
插件。
org.sonarsource.scanner.maven sonar-maven-plugin 3.6.0.1398
服务器相关配置:
需要将
修改为之前搭建的sonarqube
服务地址。
sonar true http://127.0.0.1:9000/
触发检查
pom
配置完成,先将代码进行构建使用Maven
package
命令。
完成构建执行mvn sonar:sonar
命令,也可以使用idea
maven
可视化界面进行操作。
运行完成。
查看sonar报告
打开sonar
服务页面127.0.0.1:9000
可以看到上传的项目列表,选择项目查看分析结果,项目健康状态等信息。
问题里可以看到相关的代码问题列表,打开单个则查看详情。
当然我们只是使用了简单的Maven
方式推送至SonarQube
服务,当然也可以在ci引擎进行代码自动检查。
关于如何对SonarQube代码质量检测整合问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。