-
Bug
-
Resolution: Fixed
-
Major
-
Jenkins ver. 1.634, OpenJDK 1.7.0_79, Ubuntu 14.04.3 LTS
-
Powered by SuggestiMate
Ruby Runtime plugin fails to load
Oct 19, 2015 9:25:42 AM jenkins.InitReactorRunner$1 onTaskFailed SEVERE: Failed Loading plugin ruby-runtime java.io.IOException: Failed to initialize at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441) at hudson.PluginManager$2$1$1.run(PluginManager.java:384) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:915) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:274) at org.jenkinsci.bytecode.ClassWriter.loadClass(ClassWriter.java:97) at org.jenkinsci.bytecode.ClassWriter.getCommonSuperClass(ClassWriter.java:64) 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:107) 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:113) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:800) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at org.jenkinsci.jruby.RubyClassConverter.<init>(RubyClassConverter.java:12) at org.jenkinsci.jruby.JRubyXStream.register(JRubyXStream.java:25) at ruby.RubyRuntimePlugin.initRubyXStreams(RubyRuntimePlugin.java:44) at ruby.RubyRuntimePlugin.start(RubyRuntimePlugin.java:28) at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:449) at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:438) ... 9 more
- is duplicated by
-
JENKINS-31227 Ruby Runtime Plugin installation throws SEVERE: Failed to install Ruby Runtime Plugin
-
- Closed
-
- is related to
-
JENKINS-30820 plugin failures after upgrade of bytecode-compatability-transformer
-
- Closed
-
-
JENKINS-30930 Ruby plugins break with Jenkins v. 1.633 upgrade
-
- Closed
-
- links to
[JENKINS-31019] Ruby Runtime Plugin - java.lang.ClassCircularityError: org/jruby/RubyClass
what version of the jruby plugins (ruby-runtime jruby-xstream) are installed?
which jruby based plugins are in use?
ruby-runtime 0.12
the actual plugin that we use is rbenv 0.0.16
how can i find out the version of jruby-xstream? it does not show up in the installed plugins list in jenkins.
Also confirming that I see this log message as well.
Jenkins 1.634
ruby-runtime 0.12
Oracle JDK 1.8
Ubuntu 14.04
My conf
Jenkins 1.632
ruby-runtime 0.12
Oracle JDK 1.7
CentOs 6.7
jruby 1.7.19 (1.9.3p551) 2015-01-29 20786bd on Java HotSpot(TM) 64-Bit Server VM 1.7.0_85-b15 +jit [linux-amd64]
Also seeing presumably the same issue when installing gitlab hook plugin through jenkins UI:
Jenkins 1.634
ruby 2.0.0p481 (2014-05-08 revision 45883) [x86_64-linux]
java.io.IOException: Failed to dynamically deploy this plugin at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1328) at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1126) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:110) at java.lang.Thread.run(Thread.java:745) Caused by: java.io.IOException: Failed to install ruby-runtime plugin at hudson.PluginManager.dynamicLoad(PluginManager.java:487) at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1324) ... 5 more Caused by: java.io.IOException: Failed to initialize at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441) at hudson.PluginManager.dynamicLoad(PluginManager.java:478) ... 6 more Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.jenkinsci.bytecode.ClassWriter.loadClass(ClassWriter.java:97) at org.jenkinsci.bytecode.ClassWriter.getCommonSuperClass(ClassWriter.java:64) 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:107) 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:113) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:800) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.jenkinsci.jruby.RubyClassConverter.<init>(RubyClassConverter.java:12) at org.jenkinsci.jruby.JRubyXStream.register(JRubyXStream.java:25) at ruby.RubyRuntimePlugin.initRubyXStreams(RubyRuntimePlugin.java:44) at ruby.RubyRuntimePlugin.start(RubyRuntimePlugin.java:28) at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:449) at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:438) ... 7 more
I'm seeing this as well - ran into it trying to install Gitlab Hook Plugin, but appears to be directly related to the Ruby Runtime plugin as I can't install it on it's own.
OSX 10.9.5
Jenkins 1.634
I tried uploading v10 and v11 versions of the ruby runtime plugin, but to no avail. I suspect something in the Jira updates broke it.
Same probem, gitlabhook stopped working after upgrading from 1.631 to 1.634
My environment:
OS: Debian Wheezy
Java: 1.7.0_80
Jenkins 1.634
Looking at the jenkins log I see the ruby-runtime error:
SEVERE: Failed Loading plugin ruby-runtime java.io.IOException: Failed to initialize at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441) at hudson.PluginManager$2$1$1.run(PluginManager.java:384) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:915) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:278) at org.jenkinsci.bytecode.ClassWriter.loadClass(ClassWriter.java:97) at org.jenkinsci.bytecode.ClassWriter.getCommonSuperClass(ClassWriter.java:64) 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:107) 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:113) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:800) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at org.jenkinsci.jruby.RubyClassConverter.<init>(RubyClassConverter.java:12) at org.jenkinsci.jruby.JRubyXStream.register(JRubyXStream.java:25) at ruby.RubyRuntimePlugin.initRubyXStreams(RubyRuntimePlugin.java:44) at ruby.RubyRuntimePlugin.start(RubyRuntimePlugin.java:28) at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:449) at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:438) ... 9 more
I suspect this problem is from the bct version upgrade that went into 1.6.33
Happening with me on Jenkins 1.635: http://goo.gl/Ba1Hwn
I'd be glad to provide any more useful info if needed.
I have the same problem.
Debian Jessie
Oracle Java 1.8.0_66-b17
Jenkins ver. 1.635
java.io.IOException: Failed to initialize at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441) at hudson.PluginManager$2$1$1.run(PluginManager.java:384) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:913) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.jenkinsci.bytecode.ClassWriter.loadClass(ClassWriter.java:97) at org.jenkinsci.bytecode.ClassWriter.getCommonSuperClass(ClassWriter.java:64) 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:107) 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:113) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:800) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.jenkinsci.jruby.RubyClassConverter.<init>(RubyClassConverter.java:12) at org.jenkinsci.jruby.JRubyXStream.register(JRubyXStream.java:25) at ruby.RubyRuntimePlugin.initRubyXStreams(RubyRuntimePlugin.java:44) at ruby.RubyRuntimePlugin.start(RubyRuntimePlugin.java:28) at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:449) at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:438) ... 9 more Okt 27, 2015 3:35:28 PM jenkins.InitReactorRunner$1 onTaskFailed SCHWERWIEGEND: Failed Loading plugin gitlab-hook java.io.IOException: Dependency ruby-runtime (0.12) doesn't exist at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:533) at hudson.PluginManager$2$1$1.run(PluginManager.java:383) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:913) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
Same exception here during startup after upgrading from v1.632 to v1.635 (on Ubuntu linux 3.13.0-66, Oracle java 1.8.0_66-b17):
[...] Oct 31, 2015 4:36:50 PM ruby.RubyRuntimePlugin start INFO: Injecting JRuby into XStream Oct 31, 2015 4:36:50 PM jenkins.InitReactorRunner$1 onTaskFailed SEVERE: Failed Loading plugin ruby-runtime java.io.IOException: Failed to initialize at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441) at hudson.PluginManager$2$1$1.run(PluginManager.java:384) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:913) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.jenkinsci.bytecode.ClassWriter.loadClass(ClassWriter.java:97) at org.jenkinsci.bytecode.ClassWriter.getCommonSuperClass(ClassWriter.java:64) 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:107) 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:113) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:800) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.jenkinsci.jruby.RubyClassConverter.<init>(RubyClassConverter.java:12) at org.jenkinsci.jruby.JRubyXStream.register(JRubyXStream.java:25) at ruby.RubyRuntimePlugin.initRubyXStreams(RubyRuntimePlugin.java:44) at ruby.RubyRuntimePlugin.start(RubyRuntimePlugin.java:28) at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:449) at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:438) ... 9 more Oct 31, 2015 4:36:50 PM jenkins.InitReactorRunner$1 onTaskFailed SEVERE: Failed Loading plugin gitlab-hook java.io.IOException: Dependency ruby-runtime (0.12) doesn't exist at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:533) at hudson.PluginManager$2$1$1.run(PluginManager.java:383) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:913) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Oct 31, 2015 4:36:50 PM org.jvnet.hudson.plugins.m2release.M2ReleaseBuildWrapper$DescriptorImpl <clinit> INFO: Using new style Permission with PermissionScope [...]
Has this issue been picked up?
I'm pretty sure this error is the cause of JENKINS-30930, which is currently unclaimed.
hsbt, yyuu are set as project maintainers on the plugin page, they might have some input. I am un-assigning myself from this bug as I am no longer the maintainer of the ruby-runtime-plugin.
The issue is likely with the bytecode-compatbility-transformer not this plugin.
The bct is a black art so for now the solution is to
A) roll back jenkins
Or
B) run without the bct (which may cause other issues)
-Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true
Nov 04, 2015 12:55:13 PM org.jenkinsci.bytecode.ClassWriter getCommonSuperClass FINER: Searching for common super class of org/jruby/RubyClass and org/jruby/runtime/builtin/IRubyObject ←[31mNov 04, 2015 12:55:13 PM jenkins.InitReactorRunner$1 onTaskFailed SEVERE: Failed Loading plugin ruby-runtime
RubyClass implements IRubyObject and the class we are loading is RubyClass - hence the circularity here.
teilo, -Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true did not appear to have any impact either way in 1.637. The same error persists.
jhansche Could you confirm the system property was correctly set? What's the output of Boolean.getBoolean('hudson.ClassicPluginStrategy.noBytecodeTransformer') in the script console?
danielbeck sorry, I've already rolled back to 1.625 (version prior to upgrade) and restored from a backup, because we couldn't run any ruby-related jobs on it. I'll have to try this again on a non-production server and get back to you.
I added the -D line mentioned above onto the command line, and confirmed it was on the command line using ps. But at this time that's all that I can recall. It's possible that the argument was in the wrong place (it has to come before the -jar switch, right?)
(it has to come before the -jar switch, right?)
Yes, exactly. I've seen it done wrong many times in the past, but you seem to know how this needs to be done.
Another verification option would be: println ClassicPluginStrategy.DISABLE_TRANSFORMER
-Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true did the job for me ! (1.636)
applied it in /etc/default/jenkins
JAVA_ARGS="$JAVA_ARGS -Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true"
JAVA_ARGS="$JAVA_ARGS -Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true"
works for me too, but is not solution.
Thanks cactusbone, that really helped!
Looking forward to a definitive fix now!
anyone wanting to try the fix out to see if it reveals any other issues can use this build - just replace the bytecode-compatibility-transformer.jar in jenkins with the file you downlaoded.
Temporarily fixed on CentOS by editing JENKINS_JAVA_OPTIONS option on /etc/sysconfig/jenkins file:
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true"
teilo installed your fix like this:
# downloaded the file you linked to /home/jenkins/bytecode-compatibility-transformer-1.8-SNAPSHOT.jar. then: cd /var/cache/jenkins/war/WEB-INF/lib/ cp bytecode-compatibility-transformer-1.7.jar bytecode-compatibility-transformer-1.7.jar.BAK cat /home/jenkins/bytecode-compatibility-transformer-1.8-SNAPSHOT.jar > bytecode-compatibility-transformer-1.7.jar /etc/init.d/jenkins restart
This fixed the issue - was able to install Ruby Runtime plugin. The builds are working fine so far on my Jenkins instance.
Please let me know if you want me to run some specific tests.
My env:
Debian 8 "jessie" Jenkins 1.638 installed from http://pkg.jenkins-ci.org/debian java version "1.7.0_91" OpenJDK Runtime Environment (IcedTea 2.6.3) (7u91-2.6.3-0ubuntu0.14.04.1) OpenJDK 64-Bit Server VM (build 24.91-b01, mixed mode)
Code changed in jenkins
User: James Nord
Path:
src/main/java/org/jenkinsci/bytecode/ClassWriter.java
src/main/java/org/jenkinsci/bytecode/NonClassLoadingClassWriter.java
src/main/java/org/jenkinsci/bytecode/Transformer.java
src/test/java/org/jenkinsci/bytecode/NonClassLoadingClassWriterTest.java
http://jenkins-ci.org/commit/bytecode-compatibility-transformer/44ca3cf1f84946ccf2b4798cf417423378fedf29
Log:
WIP JENKINS-31019
Code changed in jenkins
User: James Nord
Path:
pom.xml
src/main/java/org/jenkinsci/bytecode/NonClassLoadingClassWriter.java
src/main/java/org/jenkinsci/bytecode/helper/ClassLoadingReferenceTypeHierachyReader.java
src/main/java/org/jenkinsci/bytecode/helper/TypeHierarchyReader.java
src/test/java/org/jenkinsci/bytecode/NonClassLoadingClassWriterTest.java
http://jenkins-ci.org/commit/bytecode-compatibility-transformer/285039ef5bb9a0e4988bc683a6d6f5abb48ea8d5
Log:
JENKINS-31019 Compute the common super class without loading classes.
Loading classes to compute the common super classes did indeed cause
issues as I suspected it would. Use a third party helper from
https://github.com/Grundlefleck/ASM-NonClassloadingSimpleVerifier to help
us to do this and further customize it so that it can locate the bytecode
via the correct ClassLoader.
Code changed in jenkins
User: James Nord
Path:
pom.xml
src/main/java/org/jenkinsci/bytecode/ClassWriter.java
src/main/java/org/jenkinsci/bytecode/NonClassLoadingClassWriter.java
src/main/java/org/jenkinsci/bytecode/Transformer.java
src/main/java/org/jenkinsci/bytecode/helper/ClassLoadingReferenceTypeHierachyReader.java
src/main/java/org/jenkinsci/bytecode/helper/TypeHierarchyReader.java
src/test/java/org/jenkinsci/bytecode/NonClassLoadingClassWriterTest.java
http://jenkins-ci.org/commit/bytecode-compatibility-transformer/f75efe8bf757532c416e53ce3a8766ec4bfcaf1d
Log:
Merge pull request #7 from jtnord/JENKINS-31019
JENKINS-31019 Compute the common super class without loading classes.
Compare: https://github.com/jenkinsci/bytecode-compatibility-transformer/compare/4b26c39562ab...f75efe8bf757
Code changed in jenkins
User: James Nord
Path:
core/pom.xml
http://jenkins-ci.org/commit/jenkins/ac03723ba5cb036d9cc02540a8c7d1ffd84c8403
Log:
JENKINS-31019 Bump BCT to pickup fix.
Code changed in jenkins
User: Oleg Nenashev
Path:
core/pom.xml
http://jenkins-ci.org/commit/jenkins/53c51574e2452bc95449026446cf3f5b945a81c3
Log:
Merge pull request #1935 from jtnord/JENKINS-31019
JENKINS-31019 Bump BCT to pickup fix.
Compare: https://github.com/jenkinsci/jenkins/compare/2f92cadb967f...53c51574e245
jglick It's a regression from JENKINS-30820, which fixed JENKINS-28781. All these fixes have been in 1.633+ only. Before that, BCT hasn't been updated in 18 months. So it's irrelevant for 1.625.x, but could be for the next LTS baseline.
Integrated in jenkins_main_trunk #4380
JENKINS-31019 Bump BCT to pickup fix. (Revision ac03723ba5cb036d9cc02540a8c7d1ffd84c8403)
Result = SUCCESS
james nord : ac03723ba5cb036d9cc02540a8c7d1ffd84c8403
Files :
- core/pom.xml
Code changed in jenkins
User: Oleg Nenashev
Path:
changelog.html
http://jenkins-ci.org/commit/jenkins/a31f1acd5cf5dd4af770828c0cfb0769b473e8b1
Log:
JENKINS-31019 - Noting https://github.com/jenkinsci/jenkins/pull/1935
Compare: https://github.com/jenkinsci/jenkins/compare/cf62704f50c5...a31f1acd5cf5
Integrated in jenkins_main_trunk #4382
JENKINS-31019 - Noting https://github.com/jenkinsci/jenkins/pull/1935 (Revision a31f1acd5cf5dd4af770828c0cfb0769b473e8b1)
Result = SUCCESS
o.v.nenashev : a31f1acd5cf5dd4af770828c0cfb0769b473e8b1
Files :
- changelog.html
This is still happening in version 1.639 for me (Ubuntu 14.04 LTS):
Failed Loading plugin ruby-runtime java.io.IOException: Failed to initialize at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441) at hudson.PluginManager$2$1$1.run(PluginManager.java:384) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282) at jenkins.model.Jenkins$8.runTask(Jenkins.java:913) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.jenkinsci.bytecode.ClassWriter.loadClass(ClassWriter.java:97) at org.jenkinsci.bytecode.ClassWriter.getCommonSuperClass(ClassWriter.java:64) 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:107) 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:113) at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:800) at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310) at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1366) at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326) at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.jenkinsci.jruby.RubyClassConverter.<init>(RubyClassConverter.java:12) at org.jenkinsci.jruby.JRubyXStream.register(JRubyXStream.java:25) at ruby.RubyRuntimePlugin.initRubyXStreams(RubyRuntimePlugin.java:44) at ruby.RubyRuntimePlugin.start(RubyRuntimePlugin.java:28) at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:449) at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:438) ... 9 more
I'm not sure what to do, since others seem to have this problem fixed. If it matters, Jenkins is installed through Apt using the official repos.
Integrated in jenkins_2.0 #5
JENKINS-31019 Bump BCT to pickup fix. (Revision ac03723ba5cb036d9cc02540a8c7d1ffd84c8403)
JENKINS-31019 - Noting https://github.com/jenkinsci/jenkins/pull/1935 (Revision a31f1acd5cf5dd4af770828c0cfb0769b473e8b1)
Result = SUCCESS
james nord : ac03723ba5cb036d9cc02540a8c7d1ffd84c8403
Files :
- core/pom.xml
o.v.nenashev : a31f1acd5cf5dd4af770828c0cfb0769b473e8b1
Files :
- changelog.html
I'm hitting an identical seeming issue when trying to add the gitlab-hook plugin to an instance of Jenkins 2.60.2. What's even weirder is that it only happens on our live instance and not on the cut down VM system with all the same software versions that we use for testing. Should I reopen this bug? Add a new one?
On closer inspection, the stack trace is different enough that it's probably not the same bug. I'll log a new case.
got the same issue on Jenkins ver. 1.634, Oracle JDK 1.8.0_60, Debian Wheezy