SonarQube Java 3.8 发布,更新如下: Bug [SONARJAVA-1296] - Semantic: calls to constructors using this() and super() are not correctly resolved and usage of constructors is lost [SONARJAVA-1360] - Fix IllegalArgumentException when BytecodeVisitor raise an issue at file level [SONARJAVA-1362] - Fix NPE in MethodMatcher thrown through MethodComplexityCheck [SONARJAVA-1369] - S2275: IndexOutOfBoundsException when using '<' operator [SONARJAVA-1371] - FP: Rule AssertionsInTestsCheck S2699 should not raise issues for abstract methods [SONARJAVA-1372] - FP on S2293 (diamond Operator) with java 7 when using conditional operator [SONARJAVA-1373] - FP: Rule NoTestInTestClassCheck S2187 should not raise issues when TestNG Test annotation is used at class level [SONARJAVA-1376] - FP S2123 Issue should not be raised on fields [SONARJAVA-1379] - S2386 is leaking memory by storing the tree and not releasing it [SONARJAVA-1386] - CFG: Break and Continue with labels should point to correct successors [SONARJAVA-1387] - SE: Stack is leaking in program state. [SONARJAVA-1388] - Rule S109 (MagicNumber): Rule should not raise issue with fields from interfaces [SONARJAVA-1393] - SE: Continue statement in foreach loops [SONARJAVA-1398] - S2110: IndexOutOfBoundsException when usages of super() [SONARJAVA-1401] - Correct CFG for && and || [SONARJAVA-1403] - CFG: For each loops should loop to variable and not expression 改进 [SONARJAVA-1300] - Semantic: union type is not handled correctly [SONARJAVA-1318] - Improve debug printing of CFG [SONARJAVA-1329] - Rule S109: add hashCode exception [SONARJAVA-1338] - Support cancellation of analysis [SONARJAVA-1339] - Handle synchronized blocks [SONARJAVA-1345] - Rule: SelectorMethodArgumentCheck S2301 should exclude overridden methods [SONARJAVA-1349] - Rule S00107 should exclude overridden methods [SONARJAVA-1351] - Support @Nullable annotation on method parameters [SONARJAVA-1352] - Array Access Expression should consume and produce value in stack [SONARJAVA-1353] - Reassignment of non-null constraints yields a null constraints [SONARJAVA-1354] - Symbolic values returned from method annotated with @CheckForNull should have constraint both null and not_null [SONARJAVA-1356] - Expression ClassName.class should not raise NPE [SONARJAVA-1357] - Operator & is not correctly supported [SONARJAVA-1358] - Update description of S2162 to take into account case of null obj [SONARJAVA-1359] - While loops should be evaluated by SymExec engine [SONARJAVA-1364] - update issueManagement url in POM [SONARJAVA-1382] - S1220 and EmptyFile checks should not report an issue in case of a parse error. [SONARJAVA-1384] - CFG do not map the execution of a switch statement without default case [SONARJAVA-1385] - Remove S1312 from default profile [SONARJAVA-1389] - SE: Performance: ProgramState should rely on persistent data structure [SONARJAVA-1390] - S109: Enable precise issue location [SONARJAVA-1399] - SE: execute naively catch blocks [SONARJAVA-1400] - Postfix operator should be properly handled on stack 任务 [SONARJAVA-1311] - Limit symbolic execution of loops [SONARJAVA-1361] - Enable precise issues location if running on SonarQube 5.2 [SONARJAVA-1367] - Upgrade sslr squid bridge to 2.6.1 [SONARJAVA-1368] - Remove sonar-deprecated dependency [SONARJAVA-1374] - Remove addNoSonarLines method from JavaFileScannerContext 详情请看:release notes 文档提供在:product page. SonarQube Java 3.8 发布下载地址