SonarQube Java 3.1 发布,此版本在有关故障检测中新嵌入了 7 条规则。其主要更新信息如下: 错误修改: [SONARJAVA-922] - "super" symbol should be defined for enum and classes having object as superclass [SONARJAVA-927] - Annotations on enum constant is not available in SyntaxTree [SONARJAVA-930] - S2109 Analysis fail if annotation is declared in the same compilation unit as the expression accessing it via reflection [SONARJAVA-933] - NumberFormatException in S2437, S2183 [SONARJAVA-934] - ReflectionOnNonRuntimeAnnotationCheck : ClassCastException [SONARJAVA-953] - FP on S1151: too many lines counted [SONARJAVA-956] - Multiple issues generated by squid:S1217 when nesting try-finally [SONARJAVA-959] - FP on S2109: Do not add issue if symbol of the annotation is unknown [SONARJAVA-960] - FP on S1168 no issue should be raised when method is annotated with @CheckForNull or @Nullable [SONARJAVA-961] - Deprecate rule StringEqualityComparisonCheck / Strings should be compared using "equals()" [SONARJAVA-963] - Rule MethodCyclomaticComplexity is not feeding EffortToFix - Linear Functions have no effect [SONARJAVA-971] - BytecodeCompleter does not set supertype when class not found [SONARJAVA-986] - S1168 FP and fail of analysis when lambda block returns null 性能改善: [SONARJAVA-167] - Provide an API to access information about Symbols and Types from checks [SONARJAVA-903] - S1120 Indentation Check: support tabWidth parameter [SONARJAVA-907] - S117 Bad local and method variable name: For loop counter should be ignored [SONARJAVA-920] - FP on S1312 : this rule should not apply to method parameters. [SONARJAVA-921] - S2068 should also log an issue when calling a method with two literal parameters and when the value of the first literal is "password" [SONARJAVA-924] - FP on S1181: Exclude catch of throwable that uses Guava Closer. [SONARJAVA-925] - FP S1452 : generic wildcards in return type should not raise an issue for private methods [SONARJAVA-929] - Extend resolution of annotations to fields and methods [SONARJAVA-931] - Add variable symbols for method parameters in semantic [SONARJAVA-515] - Rule: "Object" should not be extended [SONARJAVA-923] - Rule: S2112 "URL.hashCode" and "URL.equals" should be avoided [SONARJAVA-928] - Rule: S2259 Null pointers should not be dereferenced [SONARJAVA-932] - Rule S2696: Instance methods should not write to "static" fields [SONARJAVA-947] - Rule S2674: The value returned from a stream read should be checked [SONARJAVA-948] - Rule S2718: "DateUtils.truncate" from Apache Commons Lang library should not be used [SONARJAVA-957] - Rule S2695: "PreparedStatement" and "ResultSet" methods should be called with valid indices 详细信息请查看发行页面。 下载文档请前往 product page。 SonarQube Java 3.1 发布下载地址