Repository navigation
[JENKINS-46602] [JDK 9] Pipeline fails immediately - ASM illegal argument exception #805
Copy link
Copy link
Closed
Closed
Copy link
Description
When using latest Jenkins (either LTS or weekly) and creating and running a Pipeline with JDK9, you get the following stack trace:
Démarré par l'utilisateur admin@admin
java.lang.IllegalArgumentException
at org.kohsuke.asm5.ClassReader.<init>(ClassReader.java:170)
at org.kohsuke.asm5.ClassReader.<init>(ClassReader.java:153)
at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.reader(ClassLoadingReferenceTypeHierachyReader.java:64)
at org.jenkinsci.bytecode.helper.TypeHierarchyReader.hierarchyOf(TypeHierarchyReader.java:176)
at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.hierarchyOf(ClassLoadingReferenceTypeHierachyReader.java:39)
at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFrom(TypeHierarchyReader.java:321)
at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFromAnyInterfaceImplementedBy(TypeHierarchyReader.java:329)
at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFrom(TypeHierarchyReader.java:310)
at org.jenkinsci.bytecode.helper.TypeHierarchyReader.isAssignableFrom(TypeHierarchyReader.java:124)
at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.isAssignableFrom(ClassLoadingReferenceTypeHierachyReader.java:39)
at org.jenkinsci.bytecode.helper.TypeHierarchyReader.getCommonSuperClass(TypeHierarchyReader.java:131)
at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.getCommonSuperClass(ClassLoadingReferenceTypeHierachyReader.java:39)
at org.jenkinsci.bytecode.NonClassLoadingClassWriter.getCommonSuperClass(NonClassLoadingClassWriter.java:72)
at org.kohsuke.asm5.ClassWriter.getMergedType(ClassWriter.java:1654)
at org.kohsuke.asm5.Frame.merge(Frame.java:1426)
at org.kohsuke.asm5.Frame.merge(Frame.java:1374)
at org.kohsuke.asm5.MethodWriter.visitMaxs(MethodWriter.java:1475)
at org.kohsuke.asm5.tree.MethodNode.accept(MethodNode.java:833)
at org.kohsuke.asm5.commons.JSRInlinerAdapter.visitEnd(JSRInlinerAdapter.java:187)
at org.jenkinsci.bytecode.Transformer$1$1.visitEnd(Transformer.java:109)
at org.kohsuke.asm5.MethodVisitor.visitEnd(MethodVisitor.java:877)
at org.kohsuke.asm5.ClassReader.readMethod(ClassReader.java:1021)
at org.kohsuke.asm5.ClassReader.accept(ClassReader.java:693)
at org.kohsuke.asm5.ClassReader.accept(ClassReader.java:506)
at org.jenkinsci.bytecode.Transformer.transform(Transformer.java:115)
at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:843)
at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1311)
at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1364)
at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1327)
at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1080)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)
at org.jenkinsci.plugins.workflow.cps.CpsScript.<init>(CpsScript.java:69)
at WorkflowScript.<init>(WorkflowScript)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:488)
at java.base/java.lang.Class.newInstance(Class.java:558)
at org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:434)
Caused: groovy.lang.GroovyRuntimeException: Failed to create Script instance for class: class WorkflowScript. Reason
at org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:466)
at groovy.lang.GroovyShell.parse(GroovyShell.java:700)
at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.doParse(CpsGroovyShell.java:129)
at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:123)
at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:516)
at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:479)
at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:269)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:419)
Finished: FAILURE
We'll need a new version of asm that includes JDK 9 support
Originally reported by
batmat, imported from: [JDK 9] Pipeline fails immediately - ASM illegal argument exception
- assignee:
oleg_nenashev
- status: Resolved
- priority: Critical
- component(s): pipeline
- label(s): java11
- resolution: Fixed
- resolved: 2018-06-26T08:52:09+00:00
- votes: 0
- watchers: 7
- imported: 2025-12-08
Raw content of original issue
When using latest Jenkins (either LTS or weekly) and creating and running a Pipeline with JDK9, you get the following stack trace:
Démarré par l'utilisateur admin@admin java.lang.IllegalArgumentException at org.kohsuke.asm5.ClassReader.<init>(ClassReader.java:170) at org.kohsuke.asm5.ClassReader.<init>(ClassReader.java:153) at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.reader(ClassLoadingReferenceTypeHierachyReader.java:64) at org.jenkinsci.bytecode.helper.TypeHierarchyReader.hierarchyOf(TypeHierarchyReader.java:176) at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.hierarchyOf(ClassLoadingReferenceTypeHierachyReader.java:39) at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFrom(TypeHierarchyReader.java:321) at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFromAnyInterfaceImplementedBy(TypeHierarchyReader.java:329) at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFrom(TypeHierarchyReader.java:310) at org.jenkinsci.bytecode.helper.TypeHierarchyReader.isAssignableFrom(TypeHierarchyReader.java:124) at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.isAssignableFrom(ClassLoadingReferenceTypeHierachyReader.java:39) at org.jenkinsci.bytecode.helper.TypeHierarchyReader.getCommonSuperClass(TypeHierarchyReader.java:131) at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.getCommonSuperClass(ClassLoadingReferenceTypeHierachyReader.java:39) at org.jenkinsci.bytecode.NonClassLoadingClassWriter.getCommonSuperClass(NonClassLoadingClassWriter.java:72) at org.kohsuke.asm5.ClassWriter.getMergedType(ClassWriter.java:1654) at org.kohsuke.asm5.Frame.merge(Frame.java:1426) at org.kohsuke.asm5.Frame.merge(Frame.java:1374) at org.kohsuke.asm5.MethodWriter.visitMaxs(MethodWriter.java:1475) at org.kohsuke.asm5.tree.MethodNode.accept(MethodNode.java:833) at org.kohsuke.asm5.commons.JSRInlinerAdapter.visitEnd(JSRInlinerAdapter.java:187) at org.jenkinsci.bytecode.Transformer$1$1.visitEnd(Transformer.java:109) at org.kohsuke.asm5.MethodVisitor.visitEnd(MethodVisitor.java:877) at org.kohsuke.asm5.ClassReader.readMethod(ClassReader.java:1021) at org.kohsuke.asm5.ClassReader.accept(ClassReader.java:693) at org.kohsuke.asm5.ClassReader.accept(ClassReader.java:506) at org.jenkinsci.bytecode.Transformer.transform(Transformer.java:115) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:843) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1311) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1364) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1327) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1080) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) at org.jenkinsci.plugins.workflow.cps.CpsScript.<init>(CpsScript.java:69) at WorkflowScript.<init>(WorkflowScript) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:488) at java.base/java.lang.Class.newInstance(Class.java:558) at org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:434) Caused: groovy.lang.GroovyRuntimeException: Failed to create Script instance for class: class WorkflowScript. Reason at org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:466) at groovy.lang.GroovyShell.parse(GroovyShell.java:700) at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.doParse(CpsGroovyShell.java:129) at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:123) at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:516) at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:479) at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:269) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:419) Finished: FAILUREWe'll need a new version of asm that includes JDK 9 support
- environment:
2.60.2
Reactions are currently unavailable
Activity
jenkins-infra-bot commentedon Sep 1, 2017
Remote link associated with this issue:
jenkins-infra-bot commentedon Sep 5, 2017
Raw content of original comment:
The Apache Maven project just released compiler plugin 3.7.0 which includes ASM6.0_BETA as one of its dependencies. That is the version of the maven compiler plugin that fixes some JDK 9 related compilation issues.
jenkins-infra-bot commentedon Sep 5, 2017
Raw content of original comment:
Confirmed markewaite I have that first error fixed, and am seeing another one caused by jboss-marshalling-river (unrelated to here, just the next issue to show up).
I'm going to try and push things where they can.
I think we should create a jdk9 branch for core so that we can iterate and avoid breaking master.
jenkins-infra-bot commentedon Oct 4, 2017
Raw content of original comment:
batmat - is there a ticket for the jboss-marshalling-river issue?
jenkins-infra-bot commentedon Oct 6, 2017
Raw content of original comment:
abayer not yet, no. Feel free to look into it if you want/need it. I plan to do this in background, but having more difficulty to find free time those days. Thanks!
jenkins-infra-bot commentedon Mar 15, 2018
Raw content of original comment:
batmat jenkinsci/bytecode-compatibility-transformer#9 has been released. Any plans to update Jenkins components?
jenkins-infra-bot commentedon Mar 16, 2018
Raw content of original comment:
oleg_nenashev no. Unlikely enough time in the short term unfortunately. Unassigned myself to clarify anyone can feel free to chime in.
jenkins-infra-bot commentedon Mar 22, 2018
javanna:
Raw content of original comment:
Hello, I just upgraded jenkins on my box to the latest available (jenkins-2.107) and stumbled upon this issue. I cannot run any build at this point, and my main project requires java 9 to be built. Is there a workaround? I wonder how things could previously work. I also tried downgrading but I already upgraded plugins too and everything falls apart when I downgrade the package.
jenkins-infra-bot commentedon Mar 22, 2018
Raw content of original comment:
javanna you can use Different Java versions for running Jenkins/agents themselves and for running builds, especially when you use shell steps or plugins like Maven Pipeline plugin.
jenkins-infra-bot commentedon Mar 22, 2018
javanna:
Raw content of original comment:
makes sense thanks oleg_nenashev ! I switched back to running jenkins on java 8.
jenkins-infra-bot commentedon Jun 9, 2018
Raw content of original comment:
Code changed in jenkins
User: Oleg Nenashev
Path:
core/pom.xml
http://jenkins-ci.org/commit/jenkins/7a3479a3d94a262c5cda9b03b17097625b4fbd29
Log:
JENKINS-46602">
JENKINS-46602- Update BCT to 2.0-alpha-3It is required to make Pipelines at least starting on Java 10.
jenkins-infra-bot commentedon Jun 9, 2018
Raw content of original comment:
Code changed in jenkins
User: Oleg Nenashev
Path:
core/pom.xml
http://jenkins-ci.org/commit/jenkins/48bf630b340a5e42f0963a18f1ead2cd93dce49e
Log:
Merge pull request #3487 from oleg-nenashev/java10/JENKINS-46602">
JENKINS-46602JENKINS-46602">
JENKINS-46602- Update BCT to 2.0-alpha-3Compare: jenkinsci/jenkins@ee384ba...48bf630
*NOTE:* This service been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/
Functionality will be removed from GitHub.com on January 31st, 2019.
jenkins-infra-bot commentedon Jun 9, 2018
Raw content of original comment:
It fails even with 2.0-alpha-3:
jenkins-infra-bot commentedon Jun 9, 2018
Raw content of original comment:
Requires JENKINS-51837">
JENKINS-51837jenkins-infra-bot commentedon Jun 18, 2018
Raw content of original comment:
After JENKINS-51837">
JENKINS-51837I see:jenkins-infra-bot commentedon Jun 18, 2018
Raw content of original comment:
My bad, it was sh without context. Pipeline is running after the patch
jenkins-infra-bot commentedon Jun 26, 2018
Raw content of original comment:
Fixed in the Java 10 support branch
jenkins-infra-bot commentedon Dec 8, 2025
[Original
epicfrom Jira: JENKINS-40689]