SonarQube Java 3.9 发布,更新如下: Bug [SONARJAVA-793] - Nesting of binary expression raise parse time exponentially [SONARJAVA-1218] - NPE with type resolution of ParameterizedType [SONARJAVA-1346] - Rule: fix StackOverflowError in PreparedStatementAndResultSetCheck S2695 [SONARJAVA-1347] - FP on S1185: Changing method visibility should not raise issue [SONARJAVA-1396] - IndentationCheck: should handle lambdas having block as body [SONARJAVA-1402] - FP on S3052: PrimitiveWrappers default value should be null [SONARJAVA-1404] - Jacoco sensor silently skipped if report not found [SONARJAVA-1408] - FP in S2187: should not raise issues for abstract testng classes [SONARJAVA-1417] - FP S2094 : When class is annotated, it can be empty as it is used as a marker type [SONARJAVA-1418] - lub computation should not fail semantic analysis [SONARJAVA-1420] - Annotation on array type should be properly handled [SONARJAVA-1429] - FP in IndentationCheck when case contains a block [SONARJAVA-1430] - FN in CallToDeprecatedMethodCheck 改进 [SONARJAVA-387] - Rule "Avoid use of deprecated method" should not log an issue when calling a deprecated method from another deprecated method/class [SONARJAVA-1043] - Improve Rule S2259 Add support of NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT [SONARJAVA-1236] - S2187 - FP when abstract parent class has the tests annotated methods [SONARJAVA-1289] - update S1874 for expanded scope [SONARJAVA-1295] - Add support for catch/finally in CFG [SONARJAVA-1370] - While loop do not execute correctly in CFG [SONARJAVA-1378] - Log proper warning when missing 3rd party dependencies [SONARJAVA-1391] - SE: |= and &= assignements should correctly propagate constraints. [SONARJAVA-1397] - CFG: finally block is bypassed when a return statement is encountered in try block [SONARJAVA-1405] - update description in POM [SONARJAVA-1406] - Logging of overflow of step of Symbolic Execution should be in debug [SONARJAVA-1409] - Enable precise issue location for UselessParenthesesCheck and OperatorPrecedenceCheck (S864) rules [SONARJAVA-1414] - Opened resources used as arguments of instance creation should not be tracked [SONARJAVA-1416] - Generalize open/close resources to any AutoCloseable object [SONARJAVA-1419] - Symbolic Execution should not be enabled if no checks requires it are activated in quality profile. [SONARJAVA-1425] - Member select should not occur as explicit element before a method invocation in CFG [SONARJAVA-1432] - Default constructor should be resolved. [SONARJAVA-1433] - FP on S3340: Unknown annotations should not raise issues [SONARJAVA-1437] - Update subset of rules to highlight precise location [SONARJAVA-1439] - Deprecate methods addIssue in JavaFileScannerContext and IssuableSubscriptionVisitor 新特性 [SONARJAVA-818] - Rule: S1161, missing @Override: do not raise issue on interface method when source version is less than 6 [SONARJAVA-1412] - Pom.xml files should be analysed by java plugin [SONARJAVA-1415] - Rule S3423: pom elements should be in the recommended order [SONARJAVA-1421] - Rule S3422: Dependencies should not have "system" scope [SONARJAVA-1426] - Rule S3419: Group ids should follow a naming convention [SONARJAVA-1428] - Rule S3420: Artifact ids should follow a naming convention Task [SONARJAVA-1313] - Use LiveVariableAnalysis as purge for SymbolicExecution [SONARJAVA-1314] - S2222 Locks unlocked should rely on symbolic execution [SONARJAVA-1315] - S2095 Unclosed resources should rely on Symbolic Execution [SONARJAVA-1375] - Static methods cannot be overridden in Java [SONARJAVA-1383] - Improve handling of Java version by exposing a dedicated interface instead of an Integer [SONARJAVA-1407] - Simplify integration tests maven submodules structure [SONARJAVA-1411] - Parsed pom.xml file should provide adequate data to write rules [SONARJAVA-1423] - Upgrade to parent pom 25 [SONARJAVA-1440] - Drop deprecated methods computing complexity in JavaFileScannerContext 更多内容请看:release notes 文档地址: product page SonarQube Java 3.9 发布下载地址