rewrite icon indicating copy to clipboard operation
rewrite copied to clipboard

BlockStatementTemplateGenerator throws NPE when printing NewClass constructor

Open pway99 opened this issue 3 years ago • 0 comments

Problem

Issue discovered with src/main/java/hudson/plugins/cobertura/targets/CoverageMetric.java

  * @since 10-Jul-2007 14:59:50
*/
public enum CoverageMetric {
-    PACKAGES(new HasName() {
+    PACKAGES(/*~~(java.lang.NullPointerException: Cannot invoke "org.openrewrite.java.tree.TypeTree.printTrimmed(org.openrewrite.Cursor)" because the return value of "org.openrewrite.java.tree.J$NewClass.getClazz()" is null
+  org.openrewrite.java.internal.template.BlockStatementTemplateGenerator.template(BlockStatementTemplateGenerator.java:241)
+  org.openrewrite.java.internal.template.BlockStatementTemplateGenerator.lambda$template$0(BlockStatementTemplateGenerator.java:84)
+  io.micrometer.core.instrument.composite.CompositeTimer.record(CompositeTimer.java:65)
+  org.openrewrite.java.internal.template.BlockStatementTemplateGenerator.template(BlockStatementTemplateGenerator.java:71)
+  org.openrewrite.java.internal.template.JavaTemplateParser.parseBlockStatements(JavaTemplateParser.java:164)
+  org.openrewrite.java.JavaTemplate$2.maybeReplaceStatement(JavaTemplate.java:482)
+  org.openrewrite.java.JavaTemplate$2.visitStatement(JavaTemplate.java:475)
+  org.openrewrite.java.JavaTemplate$2.visitStatement(JavaTemplate.java:102)
+  ...)~~>*/new HasName() {
     public String getName() {
       return Messages.CoverageMetrics_Packages();
     }

Recipes in example diff:

  • org.openrewrite.java.cleanup.UseLambdaForFunctionalInterface

References:

  • Recipe ID: undefined
  • Recipe Name: "Common static analysis issues"
  • Repository: jenkinsci/cobertura-plugin/master
  • Created at Wed Sep 14 2022 09:42:36 GMT-0700 (Pacific Daylight Time)

pway99 avatar Sep 14 '22 16:09 pway99