A user who perhaps had the Maven plugin disabled or uninstalled encountered this fatal error during Jenkins startup:
... SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Discovering plugin initialization tasks
java.lang.NoClassDefFoundError: hudson/maven/MavenBuild
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2451)
at java.lang.Class.getDeclaredMethods(Class.java:1810)
at org.jvnet.hudson.annotation_indexer.Index$2$1.fetch(Index.java:101)
at org.jvnet.hudson.annotation_indexer.Index$2$1.hasNext(Index.java:71)
at org.jvnet.hudson.annotation_indexer.FilterIterator.fetch(FilterIterator.java:23)
at org.jvnet.hudson.annotation_indexer.FilterIterator.hasNext(FilterIterator.java:42)
at hudson.init.InitializerFinder.discoverTasks(InitializerFinder.java:70)
at hudson.PluginManager$2$1$3.run(PluginManager.java:367)
at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
at jenkins.model.Jenkins$7.runTask(Jenkins.java:888)
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.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.ClassNotFoundException: hudson.maven.MavenBuild
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 17 more
... SEVERE hudson.WebAppMain$2#run: Failed to initialize Jenkins
org.jvnet.hudson.reactor.ReactorException: java.lang.NoClassDefFoundError: hudson/maven/MavenBuild
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:246)
at jenkins.InitReactorRunner.run(InitReactorRunner.java:43)
at jenkins.model.Jenkins.executeReactor(Jenkins.java:899)
at jenkins.model.Jenkins.<init>(Jenkins.java:801)
at hudson.model.Hudson.<init>(Hudson.java:81)
at hudson.model.Hudson.<init>(Hudson.java:77)
at hudson.WebAppMain$2.run(WebAppMain.java:214)
Caused by: java.lang.NoClassDefFoundError: hudson/maven/MavenBuild
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2451)
at java.lang.Class.getDeclaredMethods(Class.java:1810)
at org.jvnet.hudson.annotation_indexer.Index$2$1.fetch(Index.java:101)
at org.jvnet.hudson.annotation_indexer.Index$2$1.hasNext(Index.java:71)
at org.jvnet.hudson.annotation_indexer.FilterIterator.fetch(FilterIterator.java:23)
at org.jvnet.hudson.annotation_indexer.FilterIterator.hasNext(FilterIterator.java:42)
at hudson.init.InitializerFinder.discoverTasks(InitializerFinder.java:70)
at hudson.PluginManager$2$1$3.run(PluginManager.java:367)
at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
at jenkins.model.Jenkins$7.runTask(Jenkins.java:888)
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.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.ClassNotFoundException: hudson.maven.MavenBuild
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 17 more
The annotation indexer should just proceed in case some annotated classes are unloadable due to linkage errors, just as it proceeds when the classes are missing.
Seems similar to
JENKINS-18922, yet the stack trace is different, and the Jenkins version is as well.