Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-46727

[JDK9] Illegal reflective access from pegdown plugin

      While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

      A stack trace shows:

      WARNING: Illegal reflective access by org.parboiled.transform.AsmUtils to method java.lang.ClassLoader.findLoadedClass(java.lang.String)
              at org.parboiled.transform.AsmUtils.findLoadedClass(AsmUtils.java:198)
              at org.parboiled.transform.ParserTransformer.transformParser(ParserTransformer.java:35)
              at org.parboiled.Parboiled.createParser(Parboiled.java:54)
              at org.pegdown.PegDownProcessor.<init>(PegDownProcessor.java:48)
              at org.jenkins_ci.plugins.pegdown_formatter.impl.Formatter.markdownToHtml(Formatter.java:32)
              at org.jenkins_ci.plugins.pegdown_formatter.PegDownFormatter.translate(PegDownFormatter.java:95)
              at hudson.markup.MarkupFormatter.translate(MarkupFormatter.java:76)
              at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:258)
              at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
              at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83)
              at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)
              at org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)
              at org.apache.commons.jexl.parser.ASTTernaryNode.value(ASTTernaryNode.java:41)
              at org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)
              at org.apache.commons.jexl.parser.ASTExpressionExpression.value(ASTExpressionExpression.java:56)
              at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)
              at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:74)
              at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
              at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
              at org.apache.commons.jelly.tags.core.ExprTag.doTag(ExprTag.java:42)
              at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
              at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
              at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
              at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
              at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
              at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
              at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)
              at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
              at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
              at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
              at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:121)
              at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      

          [JENKINS-46727] [JDK9] Illegal reflective access from pegdown plugin

          Mark Waite created issue -
          Mark Waite made changes -
          Epic Link New: JENKINS-40689 [ 177392 ]
          Mark Waite made changes -
          Description Original: While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

          A stack trace shows:

          {noformat}
          WARNING: Illegal reflective access by org.parboiled.transform.AsmUtils (file:/var/jenkins_home/plugins/token-macro/WEB-INF/lib/parboiled-java-1.1.7.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String)
                  at org.parboiled.transform.AsmUtils.findLoadedClass(AsmUtils.java:206)
                  at org.parboiled.transform.ParserTransformer.transformParser(ParserTransformer.java:35)
                  at org.parboiled.Parboiled.createParser(Parboiled.java:54)
                  at org.jenkinsci.plugins.tokenmacro.Parser.process(Parser.java:63)
                  at org.jenkinsci.plugins.tokenmacro.TokenMacro.expand(TokenMacro.java:204)
                  at org.jenkinsci.plugins.tokenmacro.TokenMacro.expandAll(TokenMacro.java:234)
                  at org.jenkinsci.plugins.tokenmacro.TokenMacro.expandAll(TokenMacro.java:216)
                  at org.jenkinsci.plugins.tokenmacro.TokenMacro.expandAll(TokenMacro.java:208)
                  at org.jenkins_ci.plugins.run_condition.core.ExpressionCondition.runPerform(ExpressionCondition.java:56)
                  at org.jenkins_ci.plugins.run_condition.BuildStepRunner$2.evaluate(BuildStepRunner.java:107)
                  at org.jenkins_ci.plugins.run_condition.BuildStepRunner$Fail.conditionalRun(BuildStepRunner.java:147)
                  at org.jenkins_ci.plugins.run_condition.BuildStepRunner.perform(BuildStepRunner.java:105)
                  at org.jenkinsci.plugins.conditionalbuildstep.singlestep.SingleConditionalBuilder.perform(SingleConditionalBuilder.java:108)
                  at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
                  at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:735)
                  at hudson.model.Build$BuildExecution.build(Build.java:206)
                  at hudson.model.Build$BuildExecution.doRun(Build.java:163)
                  at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:490)
                  at hudson.model.Run.execute(Run.java:1735)
                  at hudson.matrix.MatrixRun.run(MatrixRun.java:146)
                  at hudson.model.ResourceController.execute(ResourceController.java:97)
                  at hudson.model.Executor.run(Executor.java:405)
          {noformat}
          New: While exploring Jenkins 2.60.3 on Oracle Java 9 build 181 (pre-release), it reports illegal access exceptions and warns that a future release of Java 9 will forbid illegal access.

          A stack trace shows:

          {noformat}
          WARNING: Illegal reflective access by org.parboiled.transform.AsmUtils to method java.lang.ClassLoader.findLoadedClass(java.lang.String)
                  at org.parboiled.transform.AsmUtils.findLoadedClass(AsmUtils.java:198)
                  at org.parboiled.transform.ParserTransformer.transformParser(ParserTransformer.java:35)
                  at org.parboiled.Parboiled.createParser(Parboiled.java:54)
                  at org.pegdown.PegDownProcessor.<init>(PegDownProcessor.java:48)
                  at org.jenkins_ci.plugins.pegdown_formatter.impl.Formatter.markdownToHtml(Formatter.java:32)
                  at org.jenkins_ci.plugins.pegdown_formatter.PegDownFormatter.translate(PegDownFormatter.java:95)
                  at hudson.markup.MarkupFormatter.translate(MarkupFormatter.java:76)
                  at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:258)
                  at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
                  at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83)
                  at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)
                  at org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)
                  at org.apache.commons.jexl.parser.ASTTernaryNode.value(ASTTernaryNode.java:41)
                  at org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:54)
                  at org.apache.commons.jexl.parser.ASTExpressionExpression.value(ASTExpressionExpression.java:56)
                  at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)
                  at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:74)
                  at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
                  at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
                  at org.apache.commons.jelly.tags.core.ExprTag.doTag(ExprTag.java:42)
                  at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
                  at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
                  at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
                  at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
                  at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
                  at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
                  at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:120)
                  at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
                  at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
                  at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
                  at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:121)
                  at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
          {noformat}
          Mark Waite made changes -
          Summary Original: CLONE - [JDK9] Illegal reflective access from pegdown plugin New: [JDK9] Illegal reflective access from pegdown plugin
          Oleg Nenashev made changes -
          Labels New: java11
          Baptiste Mathus made changes -
          Labels Original: java11 New: illegalReflectiveAccess java11
          Baptiste Mathus made changes -
          Component/s New: pegdown-formatter-plugin [ 15899 ]
          Component/s Original: core [ 15593 ]

          Baptiste Mathus added a comment - Related to https://github.com/sirthias/parboiled/issues/109 AIUI
          Baptiste Mathus made changes -
          Labels Original: illegalReflectiveAccess java11 New: illegalReflectiveAccess java11 triaged

          Mark Waite added a comment -

          The pegdown plugin has known security issues that won't be fixed. If the maintainer is not fixing known security issues, they are unlikely to resolve warnings from the Java 11 runtime environment.

          Mark Waite added a comment - The pegdown plugin has known security issues that won't be fixed. If the maintainer is not fixing known security issues, they are unlikely to resolve warnings from the Java 11 runtime environment.
          Mark Waite made changes -
          Resolution New: Won't Fix [ 2 ]
          Status Original: Open [ 1 ] New: Closed [ 6 ]

            Unassigned Unassigned
            markewaite Mark Waite
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: