Sonarqube代码分析
1.Analyzing with SonarQube Runner
该方法适用于所有不同架构的项目,包括没有使用任何源代码管理工具的项目形式,sonarqube修改检测规则,以及使用各种不同代码管理工具(SVN、Git、ClearCase 等)和编译工具(ant,maven)的项目形式,它都能够适用。
安装后,中国sonarqube修改检测规则,将bin配置到系统的环境变量里去。
1.配置sonar-scanner
2.在项目工程下新建sonar-perties配置文件
切换到项目主目录下命令行运行:sonar-runner,即可完成代码扫描
如果项目包含多个模块,代理商sonarqube修改检测规则,则该配置文件应如下图所示配置:
SonarQube 扫描 接入方式
SonarQube 接入方式sonarqube修改检测规则
SonarQube包含多种接入方式,这里提供常用的几种接入方式说明:
Jenkins集成方式
Maven集成方式
直接扫描方式
无论采用哪种集成方式,首先需要在sonar服务中生成授权token:
Jenkins集成方式
Jenkins集成具体实现方式包含两种:
通过Jenkins的Job触发Maven命令执行,这种方式实际上是通过Maven集成方式来进行扫描的;
通过Jenkins的Sonar插件执行,中国sonarqube修改检测规则,此方式实际是触发直接扫描方式来进行扫描的,Jenkins插件的安装方式详见安装
Maven集成方式全局配置
在settings.xml文件中配置以下内容
添加插件
在pom.xml中添加sonar插件:
执行分析
如果是多module项目,在执行扫描前需要先对项目进行install操作,即:
分析配置如果需要修改sonar扫描参数的默认值,在pom.xml的properties中修改即可,支持的参数较多
直接扫描方式
配置在项目根目录中创建sonar-perties配置文件,配置文件中包含以下内容:
sonarqube问题修改总结
二、BUG风险
1、声明应该使用Java集合接口,而不是具体的实现类,如“LinkedList”说明:声明应该使用Java集合接口,而不是具体的实现类,如“LinkedList”
原因:定义良好的接口来隐藏实现细节。
错误示例:
解决建议:
2、实体工具类应当隐藏其构造器说明:实用工具类,静态成员的集合,其目的并非要实例化。应该没有公共构造函数。
错误示例:
3、字符创比较上应该防止空指针异常说明:字符创比较上应该考虑到空指针异常的情况,一个变量在与字符串比较时,应当把字符串放在左边。
错误示例:
代理商sonarqube修改检测规则-苏州华克斯公司由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司实力不俗,信誉可靠,在江苏 苏州 的行业软件等行业积累了大批忠诚的客户。华克斯带着精益求精的工作态度和不断的完善创新理念和您携手步入辉煌,共创美好未来!