SonarQube学习系列2:Maven+SonarQube 最佳实践

本文详细介绍了如何在Maven项目中使用SonarQube进行代码质量评估,包括获取token、配置pom文件、排除特定模块、管理Sonar项目权限等步骤。重点讨论了如何在子模块中通过sonar.exclusions属性排除自动生成的代码,并阐述了项目权限设置的注意事项。
摘要由CSDN通过智能技术生成

本文记录了Maven工程使用SonarQube完成代码评估,并对其中指定模块进行排除和项目权限管理等

有些代码是使用相关插件或工具生成的,这些代码通常存在高冗余或书写不规范现象,不符合代码质量要求,但不影响使用,应排除在代码质量评估之外

本文基于上一篇文章的基础配置

本文将通过一个gRPC项目作为例子,该项目有 eureka-server,lib,provider,consumer 4个模块,其中lib包含gRPC的proto文件和基于该proto文件生成的Java类,代码评估时应该跳过lib模块

另外,建议先在IDE安装SonarLint插件,在本地开发时就能提供部分Sonar代码审核功能

一 获取token

在上一篇文章中我们已经设定了提交代码评估需要授权,也给新建用户 lin 分配了对应权限,所以后续的Sonar项目开发就以 lin 的身份进行。
这里需要注意,使用token要比使用密码更安全,到 我的账号安全下生成token(令牌),建议以项目名命名,每个项目使用各自的 token ,以后可以针对项目撤销token授权
先将token复制保持,下一步会用到
获取token

二 配置pom文件

官方的对应说明在:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Maven
官方给的配置示例里将一些通用配置(通过PluginGroups来提供插件默认groupId、sonar主机地址等)放到Maven的 setting.xml 文件里(也是为了在不修改pom文件的前提下可以直接运行maven-sonar指令),这里我不是很建议这么做
对于安全性配置,如密码等应该放着setting.xml里,因为pom文件时默认公开的。但除此之外,例如为了方便或统一配置将公共/默认属性放到setting.xml 里就没什么必要了,这会导致项目和Maven的高耦合。

1 添加插件

这里直接在根工程的pom文件里添加如下内容

    <build>
        <pluginManagement>
            <plugins>
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值