Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-25692

Incompatibility with docker-plugin?

    Details

    • Similar Issues:

      Description

      I am not able to start and use docker-build-step-plugin.
      It seems there is a conflict with a jar file (javax.ws.rs-api-2.0.jar) also present under docker-plugin lib directory:

      Error injecting constructor, java.lang.LinkageError: ClassCastException: attempting to castjar:file:/var/lib/jenkins/plugins/docker-plugin/WEB-INF/lib/javax.ws.rs-api-2.0.jar!/javax/ws/rs/client/ClientBuilder.class to jar:file:/var/lib/jenkins/plugins/docker-build-step/WEB-INF/lib/javax.ws.rs-api-2.0.jar!/javax/ws/rs/client/ClientBuilder.class
      at org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl.<init>(Unknown Source)

      1 error
      at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:52)
      at com.google.inject.Scopes$1$1.get(Scopes.java:65)
      at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:429)
      at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
      at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:1005)
      at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1051)
      at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:1001)
      at hudson.ExtensionFinder$GuiceFinder._find(ExtensionFinder.java:391)
      at hudson.ExtensionFinder$GuiceFinder.find(ExtensionFinder.java:382)
      at hudson.ExtensionFinder._find(ExtensionFinder.java:151)
      at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:345)
      at hudson.ExtensionList.load(ExtensionList.java:300)
      at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253)
      at hudson.ExtensionList.iterator(ExtensionList.java:143)
      at jenkins.model.Jenkins.getDescriptorByType(Jenkins.java:1174)
      at hudson.plugins.copyartifact.BuildSelectorParameter.initAliases(BuildSelectorParameter.java:99)
      at hudson.plugins.copyartifact.CopyArtifactPlugin.postInitialize(CopyArtifactPlugin.java:35)
      at hudson.PluginManager$2$1$2.run(PluginManager.java:386)
      at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
      at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
      at jenkins.model.Jenkins$7.runTask(Jenkins.java:886)
      at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
      at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
      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:745)

        Attachments

          Activity

          Hide
          albers Harald Albers added a comment -
          Show
          albers Harald Albers added a comment - see https://github.com/docker-java/docker-java/pull/102 for a possible upcoming fix
          Hide
          vjuranek vjuranek added a comment -

          IMHO docker-java PR #102 won't help as the problem with ClientBuilder is caused by different version of jersey-client (2.11 in docker-java, 2.5.1 in jDocker). As both plugins use very similar docker library (forked from same project), we can expect similar issue in the future even if this one is fixed. Both plugins needs to use non-conflicting dependencies or Jenkins core has to implement proper class loader isolation of the plugins.

          Show
          vjuranek vjuranek added a comment - IMHO docker-java PR #102 won't help as the problem with ClientBuilder is caused by different version of jersey-client (2.11 in docker-java , 2.5.1 in jDocker ). As both plugins use very similar docker library (forked from same project), we can expect similar issue in the future even if this one is fixed. Both plugins needs to use non-conflicting dependencies or Jenkins core has to implement proper class loader isolation of the plugins.

            People

            • Assignee:
              vjuranek vjuranek
              Reporter:
              lionel_lyra Lionel Beard
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated: