SonarQube 扫描 接入方式
SonarQube 接入方式sonarqube
SonarQube包含多种接入方式,这里提供常用的几种接入方式说明:
Jenkins集成方式
Maven集成方式
直接扫描方式
无论采用哪种集成方式,sonarqube 安装,首先需要在sonar服务中生成授权token:
Jenkins集成方式
Jenkins集成具体实现方式包含两种:
通过Jenkins的Job触发Maven命令执行,这种方式实际上是通过Maven集成方式来进行扫描的;
通过Jenkins的Sonar插件执行,此方式实际是触发直接扫描方式来进行扫描的,Jenkins插件的安装方式详见安装
Maven集成方式全局配置
在settings.xml文件中配置以下内容
添加插件
在pom.xml中添加sonar插件:
执行分析
如果是多module项目,在执行扫描前需要先对项目进行install操作,sonarqube,即:
分析配置如果需要修改sonar扫描参数的默认值,在pom.xml的properties中修改即可,支持的参数较多
直接扫描方式
配置在项目根目录中创建sonar-perties配置文件,中国sonarqube 插件,配置文件中包含以下内容:
sonarqube问题修改总结
一、代码复杂度问题
1、类的复杂度过高。
说明:Split this class into smaller and more specialized ones to reduce its dependencies on other classes from 24 to the maximum authorized 20 or less.
原因:类之间的耦合度过高,引用了太多其他的类,
错误示例:
修改建议:根据面向对象的单一职责进行设计,进行降耦。
2、多重循环嵌套
说明:代码块中包含多个if、for、while、switch,影响阅读,难以维护
错误示例
SonarQube测试使用
测试使用
拖动一个java项目ScanningTool放到/usr/local,进入目录
在项目根目录下创建sonar-scanner配置文件sonar-perties
项目结构图
执行扫描分析
等待程序执行完毕后打开SonarQube可查看扫描信息
到此整个内网部署已完成
中国sonarqube 插件-华克斯-sonarqube由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司拥有很好的服务与产品,不断地受到新老用户及业内人士的肯定和信任。我们公司是商盟认证会员,点击页面的商盟客服图标,可以直接与我们客服人员对话,愿我们今后的合作愉快!