Docker cloud broken (java.lang.NoClassDefFoundError: com/github/dockerjava/netty/WebTarget)

392 views
Skip to first unread message

Zach LaCelle

unread,
Apr 2, 2020, 12:01:23 PM4/2/20
to Jenkins Users

This happened after updating Jenkins and updating all plugins. One note: plugin update failed once because of a bad proxy setting. I re-installed all plugins from the command line using the following script (this is in the Docker version of Jenkins master):

 

cd ~/plugins

for i in `ls -d */ | awk '{print substr($0, 1, length($0)-1)}'`; \

do java -jar ~/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ install-plugin $i; \

done

 

The error:

 

java.lang.NoClassDefFoundError: com/github/dockerjava/netty/WebTarget

 

The stack trace:

 

java.lang.NoClassDefFoundError: com/github/dockerjava/netty/WebTarget

              at io.jenkins.docker.client.NettyDockerCmdExecFactory.init(NettyDockerCmdExecFactory.java:235)

              at com.github.dockerjava.core.DockerClientImpl.withDockerCmdExecFactory(DockerClientImpl.java:193)

              at com.github.dockerjava.core.DockerClientBuilder.build(DockerClientBuilder.java:45)

              at io.jenkins.docker.client.DockerAPI.makeClient(DockerAPI.java:249)

              at io.jenkins.docker.client.DockerAPI.getOrMakeClient(DockerAPI.java:199)

              at io.jenkins.docker.client.DockerAPI.getClient(DockerAPI.java:168)

              at io.jenkins.docker.client.DockerAPI.getClient(DockerAPI.java:151)

              at io.jenkins.docker.client.DockerAPI$DescriptorImpl.doTestConnection(DockerAPI.java:358)

              at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)

              at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:396)

              at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:408)

              at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:77)

              at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)

              at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:212)

              at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:145)

              at org.kohsuke.stapler.MetaClass$11.doDispatch(MetaClass.java:535)

              at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)

              at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:747)

Caused: javax.servlet.ServletException

              at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:797)

              at org.kohsuke.stapler.Stapler.invoke(Stapler.java:878)

              at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:280)

              at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)

              at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:747)

              at org.kohsuke.stapler.Stapler.invoke(Stapler.java:878)

              at org.kohsuke.stapler.Stapler.invoke(Stapler.java:676)

              at org.kohsuke.stapler.Stapler.service(Stapler.java:238)

              at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)

              at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:755)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1617)

              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:154)

              at jenkins.security.ResourceDomainFilter.doFilter(ResourceDomainFilter.java:76)

              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)

              at org.jenkinsci.plugins.ssegateway.Endpoint$SSEListenChannelFilter.doFilter(Endpoint.java:248)

              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)

              at io.jenkins.blueocean.ResourceCacheControl.doFilter(ResourceCacheControl.java:134)

              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)

              at io.jenkins.blueocean.auth.jwt.impl.JwtAuthenticationFilter.doFilter(JwtAuthenticationFilter.java:61)

              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)

              at jenkins.telemetry.impl.UserLanguages$AcceptLanguageFilter.doFilter(UserLanguages.java:128)

              at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)

              at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:157)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:153)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)

              at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)

              at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)

              at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)

              at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:90)

              at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at jenkins.security.SuspiciousRequestFilter.doFilter(SuspiciousRequestFilter.java:36)

              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1604)

              at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:545)

              at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)

              at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:566)

              at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)

              at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)

              at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1610)

              at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)

              at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1300)

              at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)

              at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:485)

              at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1580)

              at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)

              at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1215)

              at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)

              at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)

              at org.eclipse.jetty.server.Server.handle(Server.java:500)

              at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)

              at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:547)

              at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)

              at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)

              at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)

              at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)

              at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)

              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)

              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)

              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)

              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)

              at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)

              at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)

              at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)

              at java.lang.Thread.run(Thread.java:748)

 

Thank you!

 

Zach LaCelle

Mark Waite

unread,
Apr 2, 2020, 1:26:20 PM4/2/20
to Jenkins Users
It appears that the docker plugin 1.2.0 release made about 2 hours ago has deleted that class.  See  https://github.com/jenkinsci/docker-plugin/compare/docker-plugin-1.1.9...docker-plugin-1.2.0 for the comparison between the classes.

You may need to use docker plugin 1.1.9 rather than docker plugin 1.2.0.

--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/6b1a2e09-1a8d-475e-bd17-876518f67556%40googlegroups.com.

Zach LaCelle

unread,
Apr 2, 2020, 2:02:32 PM4/2/20
to Jenkins Users
Thanks Mark, this is helpful. Here's what I have installed currently for Docker plugins:

installed_docker_plugins.png


I believe I have 1.1.9 installed. Is it another plugin, possibly? I apologize, I don't have the Jenkins/Java knowledge to dig through this myself. I could try just downgrading everything I can and see what happens...

Thank you,

-Zach
To unsubscribe from this group and stop receiving emails from it, send an email to jenkins...@googlegroups.com.

Zach LaCelle

unread,
Apr 2, 2020, 2:11:56 PM4/2/20
to Jenkins Users
Never mind, apparently what happened is I updated all of the other Docker plugins (Docker API Plugin, Docker Commons Plugin, and Docker Pipeline) but the Docker plugin itself was still 1.1.9. Re-updating everything seems to have worked. I just picked a bad time to run the plugin update command :)

In case this helps anyone else, here are the versions that I have now that work:

installed_docker_plugins.png

Reply all
Reply to author
Forward
0 new messages