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

Scanning MultiBranchProject fails and logs NoSuchMethodError

XMLWordPrintable

      Initial scan of branches in a multi-branch-project fails with an NoSuchMethodError in the log file.

      Steps to duplicate the problem:

      1. Clone, build, and run the docker instance
          $ git clone https://github.com/MarkEWaite/docker JENKINS-41948
          $ cd JENKINS-41948
          $ git checkout -b lts-with-plugins 4dc4b070e072c452fbb6b42b28dae3445a9e20da
          $ docker build -t jenkins:JENKINS-41948 .
          $ docker run -i --rm --publish 8080:8080 jenkins:JENKINS-41948
        
      2. Connect a web browser to that docker instance (http://localhost:8080)
      3. Open the "Git Client Plugin Folder"
      4. Open the "Git Client Branches - Maven" multi-branch job
      5. Click the "Scan Project" link and then the "Run Now" link to start branch indexing
      6. Scan will complete, but no projects will be created. Console log will report an error

      Log information is:

      Feb 10, 2017 5:48:26 PM hudson.model.Executor finish1
      SEVERE: Executor threw an exception
      java.lang.NoSuchMethodError: jenkins.branch.MultiBranchProject.getRootDirFor(Lhudson/model/Job;)Ljava/io/File;
              at com.github.mjdetullio.jenkins.plugins.multibranch.TemplateDrivenMultiBranchProject.getRootDirFor(TemplateDrivenMultiBranchProject.java:306)
              at com.github.mjdetullio.jenkins.plugins.multibranch.TemplateDrivenMultiBranchProject.getRootDirFor(TemplateDrivenMultiBranchProject.java:89)
              at hudson.model.AbstractItem.getRootDir(AbstractItem.java:177)
              at hudson.model.Items.getConfigFile(Items.java:350)
              at hudson.model.AbstractItem.getConfigFile(AbstractItem.java:506)
              at hudson.model.AbstractItem.save(AbstractItem.java:501)
              at hudson.model.Job.save(Job.java:186)
              at hudson.model.AbstractProject.save(AbstractProject.java:306)
              at hudson.BulkChange.commit(BulkChange.java:98)
              at com.github.mjdetullio.jenkins.plugins.multibranch.TemplateDrivenBranchProjectFactory.setBranch(TemplateDrivenBranchProjectFactory.java:104)
              at com.github.mjdetullio.jenkins.plugins.multibranch.FreeStyleBranchProjectFactory.newInstance(FreeStyleBranchProjectFactory.java:55)
              at com.github.mjdetullio.jenkins.plugins.multibranch.FreeStyleBranchProjectFactory.newInstance(FreeStyleBranchProjectFactory.java:38)
              at jenkins.branch.MultiBranchProject$SCMHeadObserverImpl.observe(MultiBranchProject.java:1972)
              at jenkins.plugins.git.AbstractGitSCMSource$2.run(AbstractGitSCMSource.java:315)
              at jenkins.plugins.git.AbstractGitSCMSource$2.run(AbstractGitSCMSource.java:239)
              at jenkins.plugins.git.AbstractGitSCMSource.doRetrieve(AbstractGitSCMSource.java:209)
              at jenkins.plugins.git.AbstractGitSCMSource.retrieve(AbstractGitSCMSource.java:239)
              at jenkins.scm.api.SCMSource._retrieve(SCMSource.java:300)
              at jenkins.scm.api.SCMSource.fetch(SCMSource.java:210)
              at jenkins.branch.MultiBranchProject.computeChildren(MultiBranchProject.java:634)
              at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.updateChildren(ComputedFolder.java:219)
              at com.cloudbees.hudson.plugins.folder.computed.FolderComputation.run(FolderComputation.java:141)
              at jenkins.branch.MultiBranchProject$BranchIndexing.run(MultiBranchProject.java:965)
              at hudson.model.ResourceController.execute(ResourceController.java:98)
              at hudson.model.Executor.run(Executor.java:404)
      

            mjdetullio Matthew DeTullio
            markewaite Mark Waite
            Votes:
            4 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated:
              Resolved: