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

ExtensionFinder Failed to resolve interface when resolving descriptor with injected interface

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • core
    • 2.217

      When loading the Bitbucket Server Integration plugin from a clean install of Jenkins version 2.213 and above, several entries in the stack trace are appearing. I'm looking to find a fix for the problem for the plugin, but it appears the root of the issue is in Jenkins Extension Finder:

      hudson.ExtensionFinder$GuiceFinder$SezpozModule configure
       WARNING: Failed to load com.atlassian.bitbucket.jenkins.internal.config.BitbucketServerConfiguration$DescriptorImpl
       java.lang.LinkageError: Failed to resolve interface com.atlassian.bitbucket.jenkins.internal.credentials.JenkinsToBitbucketCredentials
       at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:516)
       at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:510)
       at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:487)
       at hudson.ExtensionFinder$GuiceFinder$SezpozModule.configure(ExtensionFinder.java:536)
       at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
       at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
       at com.google.inject.spi.Elements.getElements(Elements.java:110)
       at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
       at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
       at com.google.inject.Guice.createInjector(Guice.java:96)
       at com.google.inject.Guice.createInjector(Guice.java:73)
       at hudson.ExtensionFinder$GuiceFinder.<init>(ExtensionFinder.java:285)
       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
       at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
       at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
       at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
       at java.lang.Class.newInstance(Class.java:442)
       at net.java.sezpoz.IndexItem.instance(IndexItem.java:181)
       at hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:714)
       at hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:700)
       at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:344)
       at hudson.ExtensionList.load(ExtensionList.java:381)
       at hudson.ExtensionList.ensureLoaded(ExtensionList.java:317)
       at hudson.ExtensionList.getComponents(ExtensionList.java:183)
       at jenkins.model.Jenkins$6.onInitMilestoneAttained(Jenkins.java:1172)
       at jenkins.InitReactorRunner$1.onAttained(InitReactorRunner.java:83)
       at org.jvnet.hudson.reactor.ReactorListener$Aggregator.lambda$onAttained$3(ReactorListener.java:102)
       at org.jvnet.hudson.reactor.ReactorListener$Aggregator.run(ReactorListener.java:109)
       at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onAttained(ReactorListener.java:102)
       at org.jvnet.hudson.reactor.Reactor$1.run(Reactor.java:177)
       at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
       at java.lang.Thread.run(Thread.java:748)
       Caused by: java.lang.NullPointerException
       at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:504) 
      ... 33 more
      

      The errors are being caused by a NullPointerException being thrown in hudson.ExtensionFinder. It occurs when resolving descriptors that have a field describing an interface annotated with @Inject- resolve is being called on these interfaces, causing the NPE.

      The offending interfaces use @ImplementedBy for injection.

      An example of a dependency causing this issue: https://github.com/jenkinsci/atlassian-bitbucket-server-integration-plugin/blob/master/src/main/java/com/atlassian/bitbucket/jenkins/internal/config/BitbucketServerConfiguration.java#L275

          [JENKINS-60816] ExtensionFinder Failed to resolve interface when resolving descriptor with injected interface

          Martin Henschke created issue -
          Martin Henschke made changes -
          Description Original: When loading the Bitbucket Server Integration plugin from a clean install of Jenkins version 2.213 and above, several entries in the stack trace are appearing. I'm looking to find a fix for the problem for the plugin, but it appears the root of the issue is in Jenkins Extension Finder:

          ```
          hudson.ExtensionFinder$GuiceFinder$SezpozModule configure
          WARNING: Failed to load com.atlassian.bitbucket.jenkins.internal.config.BitbucketServerConfiguration$DescriptorImpl
          java.lang.LinkageError: Failed to resolve interface com.atlassian.bitbucket.jenkins.internal.credentials.JenkinsToBitbucketCredentials
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:516)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:510)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:487)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.configure(ExtensionFinder.java:536)
           at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
           at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
           at com.google.inject.spi.Elements.getElements(Elements.java:110)
           at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
           at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
           at com.google.inject.Guice.createInjector(Guice.java:96)
           at com.google.inject.Guice.createInjector(Guice.java:73)
           at hudson.ExtensionFinder$GuiceFinder.<init>(ExtensionFinder.java:285)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
           at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
           at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
           at java.lang.Class.newInstance(Class.java:442)
           at net.java.sezpoz.IndexItem.instance(IndexItem.java:181)
           at hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:714)
           at hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:700)
           at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:344)
           at hudson.ExtensionList.load(ExtensionList.java:381)
           at hudson.ExtensionList.ensureLoaded(ExtensionList.java:317)
           at hudson.ExtensionList.getComponents(ExtensionList.java:183)
           at jenkins.model.Jenkins$6.onInitMilestoneAttained(Jenkins.java:1172)
           at jenkins.InitReactorRunner$1.onAttained(InitReactorRunner.java:83)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.lambda$onAttained$3(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.run(ReactorListener.java:109)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onAttained(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.Reactor$1.run(Reactor.java:177)
           at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
           at java.lang.Thread.run(Thread.java:748)
          Caused by: java.lang.NullPointerException
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:504)
           ... 33 more
          ```

          The errors are being caused by a `NullPointerException` being thrown in `hudson.ExtensionFinder`. It occurs when resolving descriptors that have a field describing an interface annotated with `@Inject`- resolve is being called on these interfaces, causing the NPE.

          The offending interfaces use `@ImplementedBy` for injection.
          New: When loading the Bitbucket Server Integration plugin from a clean install of Jenkins version 2.213 and above, several entries in the stack trace are appearing. I'm looking to find a fix for the problem for the plugin, but it appears the root of the issue is in Jenkins Extension Finder:
          {code:java}
          hudson.ExtensionFinder$GuiceFinder$SezpozModule configure
           WARNING: Failed to load com.atlassian.bitbucket.jenkins.internal.config.BitbucketServerConfiguration$DescriptorImpl
           java.lang.LinkageError: Failed to resolve interface com.atlassian.bitbucket.jenkins.internal.credentials.JenkinsToBitbucketCredentials
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:516)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:510)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:487)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.configure(ExtensionFinder.java:536)
           at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
           at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
           at com.google.inject.spi.Elements.getElements(Elements.java:110)
           at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
           at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
           at com.google.inject.Guice.createInjector(Guice.java:96)
           at com.google.inject.Guice.createInjector(Guice.java:73)
           at hudson.ExtensionFinder$GuiceFinder.<init>(ExtensionFinder.java:285)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
           at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
           at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
           at java.lang.Class.newInstance(Class.java:442)
           at net.java.sezpoz.IndexItem.instance(IndexItem.java:181)
           at hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:714)
           at hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:700)
           at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:344)
           at hudson.ExtensionList.load(ExtensionList.java:381)
           at hudson.ExtensionList.ensureLoaded(ExtensionList.java:317)
           at hudson.ExtensionList.getComponents(ExtensionList.java:183)
           at jenkins.model.Jenkins$6.onInitMilestoneAttained(Jenkins.java:1172)
           at jenkins.InitReactorRunner$1.onAttained(InitReactorRunner.java:83)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.lambda$onAttained$3(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.run(ReactorListener.java:109)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onAttained(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.Reactor$1.run(Reactor.java:177)
           at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
           at java.lang.Thread.run(Thread.java:748)
           Caused by: java.lang.NullPointerException
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:504)
          ... 33 more
          {code}
          The errors are being caused by a NullPointerException being thrown in hudson.ExtensionFinder. It occurs when resolving descriptors that have a field describing an interface annotated with @Inject- resolve is being called on these interfaces, causing the NPE.

          The offending interfaces use @ImplementedBy for injection.
          Martin Henschke made changes -
          Description Original: When loading the Bitbucket Server Integration plugin from a clean install of Jenkins version 2.213 and above, several entries in the stack trace are appearing. I'm looking to find a fix for the problem for the plugin, but it appears the root of the issue is in Jenkins Extension Finder:
          {code:java}
          hudson.ExtensionFinder$GuiceFinder$SezpozModule configure
           WARNING: Failed to load com.atlassian.bitbucket.jenkins.internal.config.BitbucketServerConfiguration$DescriptorImpl
           java.lang.LinkageError: Failed to resolve interface com.atlassian.bitbucket.jenkins.internal.credentials.JenkinsToBitbucketCredentials
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:516)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:510)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:487)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.configure(ExtensionFinder.java:536)
           at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
           at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
           at com.google.inject.spi.Elements.getElements(Elements.java:110)
           at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
           at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
           at com.google.inject.Guice.createInjector(Guice.java:96)
           at com.google.inject.Guice.createInjector(Guice.java:73)
           at hudson.ExtensionFinder$GuiceFinder.<init>(ExtensionFinder.java:285)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
           at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
           at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
           at java.lang.Class.newInstance(Class.java:442)
           at net.java.sezpoz.IndexItem.instance(IndexItem.java:181)
           at hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:714)
           at hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:700)
           at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:344)
           at hudson.ExtensionList.load(ExtensionList.java:381)
           at hudson.ExtensionList.ensureLoaded(ExtensionList.java:317)
           at hudson.ExtensionList.getComponents(ExtensionList.java:183)
           at jenkins.model.Jenkins$6.onInitMilestoneAttained(Jenkins.java:1172)
           at jenkins.InitReactorRunner$1.onAttained(InitReactorRunner.java:83)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.lambda$onAttained$3(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.run(ReactorListener.java:109)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onAttained(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.Reactor$1.run(Reactor.java:177)
           at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
           at java.lang.Thread.run(Thread.java:748)
           Caused by: java.lang.NullPointerException
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:504)
          ... 33 more
          {code}
          The errors are being caused by a NullPointerException being thrown in hudson.ExtensionFinder. It occurs when resolving descriptors that have a field describing an interface annotated with @Inject- resolve is being called on these interfaces, causing the NPE.

          The offending interfaces use @ImplementedBy for injection.
          New: When loading the Bitbucket Server Integration plugin from a clean install of Jenkins version 2.213 and above, several entries in the stack trace are appearing. I'm looking to find a fix for the problem for the plugin, but it appears the root of the issue is in Jenkins Extension Finder:
          {code:java}
          hudson.ExtensionFinder$GuiceFinder$SezpozModule configure
           WARNING: Failed to load com.atlassian.bitbucket.jenkins.internal.config.BitbucketServerConfiguration$DescriptorImpl
           java.lang.LinkageError: Failed to resolve interface com.atlassian.bitbucket.jenkins.internal.credentials.JenkinsToBitbucketCredentials
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:516)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:510)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:487)
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.configure(ExtensionFinder.java:536)
           at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
           at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
           at com.google.inject.spi.Elements.getElements(Elements.java:110)
           at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
           at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
           at com.google.inject.Guice.createInjector(Guice.java:96)
           at com.google.inject.Guice.createInjector(Guice.java:73)
           at hudson.ExtensionFinder$GuiceFinder.<init>(ExtensionFinder.java:285)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
           at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
           at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
           at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
           at java.lang.Class.newInstance(Class.java:442)
           at net.java.sezpoz.IndexItem.instance(IndexItem.java:181)
           at hudson.ExtensionFinder$Sezpoz._find(ExtensionFinder.java:714)
           at hudson.ExtensionFinder$Sezpoz.find(ExtensionFinder.java:700)
           at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:344)
           at hudson.ExtensionList.load(ExtensionList.java:381)
           at hudson.ExtensionList.ensureLoaded(ExtensionList.java:317)
           at hudson.ExtensionList.getComponents(ExtensionList.java:183)
           at jenkins.model.Jenkins$6.onInitMilestoneAttained(Jenkins.java:1172)
           at jenkins.InitReactorRunner$1.onAttained(InitReactorRunner.java:83)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.lambda$onAttained$3(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.run(ReactorListener.java:109)
           at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onAttained(ReactorListener.java:102)
           at org.jvnet.hudson.reactor.Reactor$1.run(Reactor.java:177)
           at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
           at java.lang.Thread.run(Thread.java:748)
           Caused by: java.lang.NullPointerException
           at hudson.ExtensionFinder$GuiceFinder$SezpozModule.resolve(ExtensionFinder.java:504)
          ... 33 more
          {code}
          The errors are being caused by a NullPointerException being thrown in hudson.ExtensionFinder. It occurs when resolving descriptors that have a field describing an interface annotated with @Inject- resolve is being called on these interfaces, causing the NPE.

          The offending interfaces use @ImplementedBy for injection.

          An example of a dependency causing this issue: https://github.com/jenkinsci/atlassian-bitbucket-server-integration-plugin/blob/master/src/main/java/com/atlassian/bitbucket/jenkins/internal/config/BitbucketServerConfiguration.java#L275
          Jesse Glick made changes -
          Link New: This issue is caused by JENKINS-60449 [ JENKINS-60449 ]
          Jesse Glick made changes -
          Labels New: regression
          Jesse Glick made changes -
          Assignee New: Jesse Glick [ jglick ]
          Jesse Glick made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Jesse Glick made changes -
          Remote Link New: This issue links to "jenkins #4444 (Web Link)" [ 24316 ]
          Jesse Glick made changes -
          Status Original: In Progress [ 3 ] New: In Review [ 10005 ]
          Jesse Glick made changes -
          Released As New: 2.216
          Resolution New: Fixed [ 1 ]
          Status Original: In Review [ 10005 ] New: Fixed but Unreleased [ 10203 ]
          Oleg Nenashev made changes -
          Released As Original: 2.216 New: 2.217
          Status Original: Fixed but Unreleased [ 10203 ] New: Resolved [ 5 ]

            jglick Jesse Glick
            mhenschke_atlassian Martin Henschke
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: