Sonarqube代码分析
1.Analyzing with SonarQube Runner
该方法适用于所有不同架构的项目,包括没有使用任何源代码管理工具的项目形式,以及使用各种不同代码管理工具(SVN、Git、ClearCase 等)和编译工具(ant,maven)的项目形式,它都能够适用。
安装后,将bin配置到系统的环境变量里去。
1.配置sonar-scanner

2.在项目工程下新建sonar-project.properties配置文件

切换到项目主目录下命令行运行:sonar-runner,即可完成代码扫描
如果项目包含多个模块,则该配置文件应如下图所示配置:






关于SonarQube社区版使用问题及解决方法
解决SonarQube扫描规则问题
在搭建好SonarQube平台后,已经配置好了针对每种语言的"Sonar Way"质量配置。我们在大规模使用中,sonarqube 安装,对扫描Java项目的规则做了一些定制,有一些新增的规则还有一部分弃用的规则,总之大部分还都是默认自带的java规则,配置好规则后并设置为默认的规则。
分析
SonarQube平台中的项目不需要单独的新建,而是通过Jenkins构建过程中生成。
当我们需要为项目新的质量配置的时候,代理商sonarqube 安装,通常在Sonar WebUi中进行配置。
无法通过"-Dsonar.xxxx"方式每次分支时使用的质量名称。
应对
由于SonarQube项目都是通过流水线扫描后生成的,于是在流水线中增加步骤。
每次扫描之前先判断项目是否存在,然后新的质量,中国sonarqube 安装,再执行代码扫描。
sonarqube问题修改总结
三、可读性问题
1、用isEmpty()去做容器的空或者非空判断。
说明:Use isEmpty() to check whether the collection is empty or not.
原因:增加可读性。
2、删除没有用的import、field、class、method。
原因:增加可维护性。
修改建议:删除无用代码块、申明、方法和引用。
3、if语句被拆分不利于可读
说明:Merging collapsible if statements increases the code"s readability.
3、方法内多个return出口
错误示例:

解决建议:定义一个return,赋值,统一返回。
4、修改了入参说明:修改了入参降低了代码的可读性,丢失了原始参数的值。
错误示例:

5、用equalsIgnoreCase()方法替代字符串的无视大小写比较。
说明:Replace these toUpperCase()/toLowerCase() and equals() calls with a single equalsIgnoreCase() call.
原因:参数应当是final的
解决建议,利用一个临时变量充当需要变动的参数。
华克斯信息-代理商sonarqube 安装由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司拥有很好的服务与产品,不断地受到新老用户及业内人士的肯定和信任。我们公司是商盟认证会员,点击页面的商盟客服图标,可以直接与我们客服人员对话,愿我们今后的合作愉快!