Public bug reported: Maven build doesn't work in slave mode : the Maven build plugin requires the class jenkins.util.MarkFindingOutputStream to work but this class is not in the jenkins WAR built by Ubuntu. This class is present in the official build of Jenkins LTS 1.466.1
When i try to build a Maven project in a slave, i see this stacktrace : Modules changed, recalculating dependency graph FATAL: jenkins/util/MarkFindingOutputStream java.lang.NoClassDefFoundError: jenkins/util/MarkFindingOutputStream at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at hudson.maven.MavenModuleSetBuild$RunnerImpl.doRun(MavenModuleSetBuild.java:655) at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:480) at hudson.model.Run.run(Run.java:1438) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:477) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:239) Caused by: java.lang.ClassNotFoundException: jenkins.util.MarkFindingOutputStream at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 16 more I dont understand why the MarkFindingOutputStream class in not present because the source file is in the source package in this folder : core/src/main/groovy/jenkins/util/MarkFindingOutputStream.java. The other source file present in this folder is ServerTcpPort and is correctly compiled and included in the WAR file of Jenkins. Anyway, theses two files are in the wrong folder (groovy sources). Upstream fixed this : https://github.com/jenkinsci/jenkins/commit/2338b6682146e912c9a4d3769eff4864e487c427. I think that the best thing to do is to move theses files in the right source folder. Hope this helps, Yoann. ** Affects: jenkins (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1045795 Title: jenkins.util.MarkFindingOutputStream class is missing : Maven build not working in slave mode To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/jenkins/+bug/1045795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs