Bug in Git-plugin refactoring branch (ClassNotFoundException)

62 views
Skip to first unread message

Sapone

unread,
Aug 30, 2013, 2:28:00 AM8/30/13
to jenkin...@googlegroups.com
I've got three completely non-working classes in new Git-plugin "Additional Behaviours". Looks like two of them are easy peasy:
https://github.com/jenkinsci/git-plugin/pull/171

But the third is the tricky one...
When I'm trying to save job with  "Strategy for choosing what to build" I have this:

java.lang.reflect.InvocationTargetException
        at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
        at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
        at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
        at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
        at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
        at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1074)
        at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
        at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
        at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
        at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
        at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
        at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
        at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146)
        at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
        at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
        at org.mortbay.jetty.Server.handle(Server.java:285)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
        at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:628)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
        at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
        at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"":"auto","branches":{"name":"master"},"extensions":{"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]},"userRemoteConfigs":{"name":"","refspec":"","url":"https://github.com/jenkinsci/git-client-plugin.git"},"value":"1"}
        at hudson.model.Descriptor.newInstance(Descriptor.java:575)
        at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:1083)
        at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:987)
        at hudson.scm.SCMS.parseSCM(SCMS.java:63)
        at hudson.model.AbstractProject.submit(AbstractProject.java:1790)
        at hudson.model.Project.submit(Project.java:197)
        at hudson.model.Job.doConfigSubmit(Job.java:991)
        at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:699)
        ... 48 more
Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.git.GitSCM from {"":"auto","branches":{"name":"master"},"extensions":{"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]},"userRemoteConfigs":{"name":"","refspec":"","url":"https://github.com/jenkinsci/git-client-plugin.git"},"value":"1"}
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:633)
        at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
        at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:373)
        at hudson.model.Descriptor.newInstance(Descriptor.java:566)
        ... 55 more
Caused by: java.lang.IllegalArgumentException: Failed to convert the extensions parameter of the constructor public hudson.plugins.git.GitSCM(java.util.List,java.util.List,java.lang.Boolean,java.util.Collection,hudson.plugins.git.browser.GitRepositoryBrowser,java.lang.String,java.util.List)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:627)
        ... 58 more
Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.git.extensions.GitSCMExtension from {"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]}
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:633)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:669)
        at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:625)
        ... 58 more
Caused by: java.lang.IllegalArgumentException: Class ["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"] is specified in JSON, but no such class found in classLoader hudson.PluginManager$UberClassLoader
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:606)
        ... 61 more
Caused by: java.lang.ClassNotFoundException: ["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]
        at hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:783)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:601)
        ... 61 more
Aug 30, 2013 11:32:48 AM org.kohsuke.stapler.compression.CompressionFilter reportException
WARNING: Untrapped servlet exception
javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"":"auto","branches":{"name":"master"},"extensions":{"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]},"userRemoteConfigs":{"name":"","refspec":"","url":"https://github.com/jenkinsci/git-client-plugin.git"},"value":"1"}
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:616)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
        at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
        at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1074)
        at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
        at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
        at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
        at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
        at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
        at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
        at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:146)
        at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
        at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
        at org.mortbay.jetty.Server.handle(Server.java:285)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
        at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:628)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
        at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
        at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"":"auto","branches":{"name":"master"},"extensions":{"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]},"userRemoteConfigs":{"name":"","refspec":"","url":"https://github.com/jenkinsci/git-client-plugin.git"},"value":"1"}
        at hudson.model.Descriptor.newInstance(Descriptor.java:575)
        at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:1083)
        at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:987)
        at hudson.scm.SCMS.parseSCM(SCMS.java:63)
        at hudson.model.AbstractProject.submit(AbstractProject.java:1790)
        at hudson.model.Project.submit(Project.java:197)
        at hudson.model.Job.doConfigSubmit(Job.java:991)
        at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:699)
        at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
        at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
        at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
        at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
        ... 39 more
Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.git.GitSCM from {"":"auto","branches":{"name":"master"},"extensions":{"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]},"userRemoteConfigs":{"name":"","refspec":"","url":"https://github.com/jenkinsci/git-client-plugin.git"},"value":"1"}
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:633)
        at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
        at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:373)
        at hudson.model.Descriptor.newInstance(Descriptor.java:566)
        ... 55 more
Caused by: java.lang.IllegalArgumentException: Failed to convert the extensions parameter of the constructor public hudson.plugins.git.GitSCM(java.util.List,java.util.List,java.lang.Boolean,java.util.Collection,hudson.plugins.git.browser.GitRepositoryBrowser,java.lang.String,java.util.List)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:627)
        ... 58 more
Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.git.extensions.GitSCMExtension from {"":"0","kind":"hudson.plugins.git.extensions.impl.BuildChooserSetting","stapler-class":["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]}
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:633)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:669)
        at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:625)
        ... 58 more
Caused by: java.lang.IllegalArgumentException: Class ["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"] is specified in JSON, but no such class found in classLoader hudson.PluginManager$UberClassLoader
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:606)
        ... 61 more
Caused by: java.lang.ClassNotFoundException: ["hudson.plugins.git.util.DefaultBuildChooser","hudson.plugins.git.extensions.impl.BuildChooserSetting"]
        at hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:783)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
        at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:601)
        ... 61 more

Can someone help me to figure out why class(es) is missing? (I'm actually not sure what this construction means - ["Class1", "Class2"])

probably related bug: https://issues.jenkins-ci.org/browse/JENKINS-19063
Reply all
Reply to author
Forward
0 new messages