SONAR 的强大使用 代码规范和检测非常不错 本地启动测试
1.本地需要启动sonar 把自己开发的插件打包放到 sonarqube-6.7.4\extensions\plugins 下面 本地测试的话 还需要新增 sonar.properties 配置
#sonar.web.javaAdditionalOpts=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000
sonar.ce.javaAdditionalOpts=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000
2.自己的项目需要配置 Remote 启动 做端口监听检测到了就执行测试代码 如果本地启动不介入snore 可以写main 方法( 如果要本地跑main方法,需要把pom里面的2个provided给注释掉)
3.就是在要检测的项目下面执行mvn sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=fcf4e9886d51c897cf4f91c4599fd04be22abb92 这个命令就是触发snore
也可执行mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=true 测试效果
在做公共类引用 对静态集合做初始化的时候代码规范可以这样写
Map left = ImmutableMap.of("a",1,"b",2,"c",3);
//或者
Map test = ImmutableMap.builder()
.put("k1","v1")
.put("k2","v2")
...
.build();
List 集合可以使用 ImmutableSet imSet=ImmutableSet.of("peida","jerry","harry","lisa");
public static final ListAPOLLO_NEED_SYNC_ENVS= Arrays.asList("DEV","TST");