-
Bug
-
Resolution: Fixed
-
Blocker
-
None
-
Slakware Linux, GlassFish Server Open Source Edition 3.0.1 (build 22)
-
Powered by SuggestiMate
After deployment, when navigating to the applications web page http://localhost:8080/hudson, it crashes with the following error:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: PWC1243: Filter execution threw an exception
root cause
java.lang.NoClassDefFoundError: hudson/ivy/IvyModuleSetBuild
root cause
java.lang.ClassNotFoundException: hudson.ivy.IvyModuleSetBuild
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.0.1 logs.
--------------------------------------------------------------------------------
GlassFish Server Open Source Edition 3.0.1
[JENKINS-7380] Latest version 1.375 crashes in Glassfish ver. 3.0.1
Yeah, I can verify that I'm not seeing this on a completely fresh install run via "java -jar hudson.war" with 1.375. I'm guessing you have one or more jobs configured as Ivy builds but don't have the Ivy plugin installed.
It actually happens even if you have no Ivy builds configured.
For some reason the Copy Artifact Plugin v1.8, for example, suddenly also requires the Ivy plugin installed after upgrading Hudson from version 1.374 to 1.375, even if there are no configured Ivy builds on the system.
extract from log:
07 Sep 2010 6:33:06 PM hudson.model.Hudson$4 onAttained INFO: Started initialization 07 Sep 2010 6:33:14 PM hudson.model.Hudson$4 onAttained INFO: Listed all plugins 07 Sep 2010 6:33:14 PM hudson.model.Hudson$4 onAttained INFO: Prepared all plugins 07 Sep 2010 6:33:15 PM hudson.model.Hudson$4 onTaskFailed SEVERE: Failed Initializing plugin copyartifact java.lang.NoClassDefFoundError: hudson/ivy/IvyModuleSetBuild at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at hudson.ExtensionFinder$Sezpoz.scout(ExtensionFinder.java:188) at hudson.ExtensionList.scoutLoad(ExtensionList.java:245) at hudson.ExtensionList.ensureLoaded(ExtensionList.java:212) at hudson.ExtensionList.iterator(ExtensionList.java:113) at hudson.ExtensionList.scoutLoad(ExtensionList.java:244) at hudson.ExtensionList.ensureLoaded(ExtensionList.java:212) at hudson.ExtensionList.iterator(ExtensionList.java:113) at hudson.model.Hudson.getDescriptorByType(Hudson.java:946) at hudson.plugins.copyartifact.BuildSelectorParameter.initAliases(BuildSelectorParameter.java:100) at hudson.plugins.copyartifact.CopyArtifactPlugin.postInitialize(CopyArtifactPlugin.java:35) at hudson.PluginManager$2$1$2.run(PluginManager.java:284) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259) at hudson.model.Hudson$3.runTask(Hudson.java:679) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.ClassNotFoundException: hudson.ivy.IvyModuleSetBuild at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 21 more
I don't think that's the Copy Artifact plugin depending on Ivy - I'm pretty sure that's just a case of the Copy Artifact plugin's initialization process uncovering another problem. Somewhere in your Hudson config, there's a reference to the Ivy project type, and it's getting unearthed by Copy Artifact.
yes, this is just some initialization code in copyartifact that is getting all the Descriptors of its own BuildSelector type.. nothing to do with ivy here, but this must trigger some initialization in Hudson for descriptors of other types, resulting in a stack trace that includes copyartifact.
Also observed in JBoss 5.1.0.GA. Happens with copyartifact, also happens with UpdateCenter:
2010-09-07 16:16:45,936 SEVERE [hudson.model.Hudson] (pool-16-thread-1) Failed UpdateCenter.init java.lang.Error: java.lang.reflect.InvocationTargetException at hudson.init.InitializerFinder.invoke(InitializerFinder.java:107) ... Caused by: java.lang.NoClassDefFoundError: hudson/ivy/IvyModuleSetBuild
Suggested fix (roll back, install Ivy plugin, re-upgrade) works but would be nice to avoid.
Code changed in hudson
User: : kohsuke
Path:
trunk/hudson/main/core/src/main/java/hudson/ExtensionFinder.java
trunk/www/changelog.html
http://jenkins-ci.org/commit/34544
Log:
[FIXED JENKINS-7380] Handle initialization problem more gracefully
Integrated in hudson_main_trunk #244
[FIXED JENKINS-7380] Handle initialization problem more gracefully
kohsuke :
Files :
- /trunk/www/changelog.html
- /trunk/hudson/main/core/src/main/java/hudson/ExtensionFinder.java
Did you ever have the Ivy plugin installed?
No, never. Not before upgrading to v1.375
Having same problems with java -jar hudson.war ... never ever had Ivy builds anywhere or copy artifact.
However downgraded to 1.374, removed a bunch of plugins and did a "remove old|incompatible data"
Upgraded again and all fine now.
Reproduced with Hudson 1.376 (new install), on Ubuntu 10.4 and (internal) Winstone, using Git plug-in 1.0.1.
16/09/2010 14:07:14 hudson.model.Hudson$4 onAttained INFO: Prepared all plugins 16/09/2010 14:07:15 hudson.ExtensionFinder$Sezpoz scout WARNING: Failed to scout org.jfrog.hudson.ivy.ArtifactoryIvyRunListener java.lang.NoClassDefFoundError: hudson/ivy/IvyModuleSetBuild at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:247) at hudson.ExtensionFinder$Sezpoz.scout(ExtensionFinder.java:188) at hudson.ExtensionList.scoutLoad(ExtensionList.java:245) at hudson.ExtensionList.ensureLoaded(ExtensionList.java:212) at hudson.ExtensionList.iterator(ExtensionList.java:113) at hudson.ExtensionList.scoutLoad(ExtensionList.java:244) at hudson.ExtensionList.ensureLoaded(ExtensionList.java:212) at hudson.ExtensionList.iterator(ExtensionList.java:113) at hudson.model.Hudson.getDescriptor(Hudson.java:923) at hudson.plugins.git.GitTool.onLoaded(GitTool.java:51) at hudson.plugins.git.PluginImpl.postInitialize(PluginImpl.java:16) at hudson.PluginManager$2$1$2.run(PluginManager.java:284) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259) at hudson.model.Hudson$3.runTask(Hudson.java:679) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.ClassNotFoundException: hudson.ivy.IvyModuleSetBuild at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 21 more
Should reopen?
I have still this issue with 1.380 version
Not related to Glassfish.
Nov 16, 2010 6:15:18 PM hudson.ExtensionFinder$Sezpoz scout
WARNING: Failed to scout org.jfrog.hudson.ivy.ArtifactoryIvyRunListener
java.lang.NoClassDefFoundError: hudson/ivy/IvyModuleSetBuild
Is this related: https://issues.jfrog.org/jira/browse/HAP-94 ?
I've solved my problem upgrading the Artifactory plug-in.
Resolving again as fixed, because "Failed to scout org.jfrog.hudson.ivy.ArtifactoryIvyRunListener java.lang.NoClassDefFoundError: hudson/ivy/IvyModuleSetBuild" was caused by https://issues.jfrog.org/jira/browse/HAP-94 as said by Taciano, which is fixed (and verified by Taciano).
This problem is not dependent on using GlassFish.
It is probably related to one or more other installed plugins, rather than Hudson itself. The copyartifact plugin, for example, specifically causes this problem.
Workaround: Rollback to 1.374, install the Ivy plugin, then reload 1.375