Can I use the JBehave Jenkins plugin?

Issue

I am not able to use the JBehave Jenkins plugin. Here the trace I found in the logs:

INFO: Scheduling Jenkins reboot
Mar 21, 2016 1:11:08 PM hudson.model.UpdateCenter doSafeRestart
(...)
Mar 21, 2016 1:11:46 PM hudson.ExtensionFinder$Sezpoz scout
WARNING: Failed to scout org.jbehave.hudson.JBehavePluginType$DescriptorImpl
java.lang.InstantiationException: java.lang.NoClassDefFoundError: com/thalesgroup/dtkit/metrics/hudson/api/descriptor/TestTypeDescriptor
	at net.java.sezpoz.IndexItem.element(IndexItem.java:146)
	at hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:629)
	at hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:618)
	at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:388)
	at hudson.ExtensionList.load(ExtensionList.java:349)
	at hudson.ExtensionList.ensureLoaded(ExtensionList.java:287)
	at hudson.ExtensionList.iterator(ExtensionList.java:156)
	at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:381)
	at hudson.ExtensionList.load(ExtensionList.java:349)
	at hudson.ExtensionList.ensureLoaded(ExtensionList.java:287)
	at hudson.ExtensionList.size(ExtensionList.java:175)
	at java.util.AbstractCollection.toArray(AbstractCollection.java:136)
	at java.util.ArrayList.addAll(ArrayList.java:577)
	at com.cloudbees.jenkins.plugins.license.EntitlementChecker.all(EntitlementChecker.java:35)
	at com.cloudbees.jenkins.plugins.license.PluginImpl.postInitialize(PluginImpl.java:33)
	at hudson.PluginManager$2$1$2.run(PluginManager.java:390)
	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$7.runTask(Jenkins.java:905)
	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.NoClassDefFoundError: com/thalesgroup/dtkit/metrics/hudson/api/descriptor/TestTypeDescriptor
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
	at jenkins.util.AntClassLoader.defineClassFromData(AntClassLoader.java:1139)
	at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:801)
	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 sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at jenkins.ClassLoaderReflectionToolkit.invoke(ClassLoaderReflectionToolkit.java:44)
	at jenkins.ClassLoaderReflectionToolkit._findClass(ClassLoaderReflectionToolkit.java:86)
	at hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:1123)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at net.java.sezpoz.IndexItem.element(IndexItem.java:134)
	... 23 more
Caused by: java.lang.ClassNotFoundException: com.thalesgroup.dtkit.metrics.hudson.api.descriptor.TestTypeDescriptor
	at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1376)
	at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326)
	at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 39 more

Environment

Jenkins: 1.625.3.1

JBehave Jenkins Plugin: 3.6

Resolution

Unfortunately, the only action to do is to disable this plugin. Indeed, it depends on Hudson libraries, not on Jenkins ones.

The fix depends on the JBEHAVE-1160 issue.

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.