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

Packaging of spring-context-support causes crowd plugin to prevent Jenkins starting properly

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Blocker
    • Resolution: Unresolved
    • crowd-plugin
    • None
    • jenkins from version 1.502
      crowd 1.3-SNAPSHOT

    Description

      As described here: http://jenkins.361315.n4.nabble.com/Getting-NoSuchClassDefFoundError-for-ehcache-td391329.html, the spring-context-support JAR that is now (from version 1.502 on) packaged into the jenkins.war is loaded instead of the one from crowd/WEB-INF/lib. So it does not find classes from the ehcache JAR packaged only in the crowd/WEB-INF/lib.

      (see attached jenkins.log for complete stack trace)

      Two possible solutions:

      1. remove the spring-context-support JAR from jenkins.war/WEB-INF/lib
      2. switch class loader lookup order to search "plugin/WEB-INF/lib" first (this way it would be possible for plugin developers to override JARs delivered with the jenkins core)

      This issue prevents me from using the newest jenkins versions (starting from 1.502).

      Attachments

        Activity

          I first encountered this problem in an upgrade to 1.497.

          rmorgenstein Ruth Morgenstein added a comment - I first encountered this problem in an upgrade to 1.497.
          farrez09 Shane Farrell added a comment -

          Has anyone got any Jenkins LTS version beyond 1.480.2 to work? 1.480.2 seems to be the last LTS version that works with the crowd plugin.

          farrez09 Shane Farrell added a comment - Has anyone got any Jenkins LTS version beyond 1.480.2 to work? 1.480.2 seems to be the last LTS version that works with the crowd plugin.
          tapiomtr tapiomtr added a comment -

          I got latest LTS Jenkins to work with the latest crowd pluging, but I have to delete spring-context-support JAR as the possible solutions 1. says.

          tapiomtr tapiomtr added a comment - I got latest LTS Jenkins to work with the latest crowd pluging, but I have to delete spring-context-support JAR as the possible solutions 1. says.
          marc_guenther Marc Günther added a comment -

          So is this a problem with core or with the crowd plugin?

          I don't understand the nabble link above. It is from 2009, and it seems the problem was FIXED at that time. So why has it suddenly resurfaced? Can we apply the same "fix" again?

          Why was that jar file included again? Maybe related to this commit? (which is from 6 months ago):
          https://github.com/jenkinsci/jenkins/commit/e52c7efa997534e31526d1ba0ae80ea560619fc9

          marc_guenther Marc Günther added a comment - So is this a problem with core or with the crowd plugin? I don't understand the nabble link above. It is from 2009, and it seems the problem was FIXED at that time. So why has it suddenly resurfaced? Can we apply the same "fix" again? Why was that jar file included again? Maybe related to this commit? (which is from 6 months ago): https://github.com/jenkinsci/jenkins/commit/e52c7efa997534e31526d1ba0ae80ea560619fc9
          c2pa_it C2PA IT added a comment -

          Anyone know if this is going to be fixed by chance or if we just need to plan on implementing the workarounds in the future?

          c2pa_it C2PA IT added a comment - Anyone know if this is going to be fixed by chance or if we just need to plan on implementing the workarounds in the future?
          marc_guenther Marc Günther added a comment -

          Still not fixed in Jenkins LTS 1.532.2 and Crowd Plugin 1.2

          This essentially means that we cannot even upgrade to LTS. We are on 1.501 currently...

          marc_guenther Marc Günther added a comment - Still not fixed in Jenkins LTS 1.532.2 and Crowd Plugin 1.2 This essentially means that we cannot even upgrade to LTS. We are on 1.501 currently...

          Same issue for us, we are stuck with version 1.498

          mcflyfr Clément Billiot added a comment - Same issue for us, we are stuck with version 1.498
          marc_guenther Marc Günther added a comment -

          And Crowd2-Plugin has severe perfomance issues (we tried it), so it's not an option either: JENKINS-16703

          marc_guenther Marc Günther added a comment - And Crowd2-Plugin has severe perfomance issues (we tried it), so it's not an option either: JENKINS-16703

          You should use jenkins with tomcat and not with the embedded jetty, it has worked for us.

          mcflyfr Clément Billiot added a comment - You should use jenkins with tomcat and not with the embedded jetty, it has worked for us.
          marc_guenther Marc Günther added a comment -

          We use the standalone jar with embedded winstone, and it works when we delete the spring-context-support-2.5.6.SEC03.jar from the jenkins.war.

          marc_guenther Marc Günther added a comment - We use the standalone jar with embedded winstone, and it works when we delete the spring-context-support-2.5.6.SEC03.jar from the jenkins.war .
          danielbeck Daniel Beck added a comment -

          Can't the Crowd plugin just switch to using the plugin first classloader?

          http://javadoc.jenkins-ci.org/hudson/PluginFirstClassLoader.html

          danielbeck Daniel Beck added a comment - Can't the Crowd plugin just switch to using the plugin first classloader? http://javadoc.jenkins-ci.org/hudson/PluginFirstClassLoader.html
          danielbeck Daniel Beck added a comment -

          Removing core component. Issues like these are what PluginFirstClassloader is designed for, and if not using that, it's no surprise this breaks.

          danielbeck Daniel Beck added a comment - Removing core component. Issues like these are what PluginFirstClassloader is designed for, and if not using that, it's no surprise this breaks.
          marc_guenther Marc Günther added a comment -

          Any news on this one? We still have to remove that spring-context jar file manually, every time we do an upgrade of Jenkins...

          marc_guenther Marc Günther added a comment - Any news on this one? We still have to remove that spring-context jar file manually, every time we do an upgrade of Jenkins...
          c2pa_it C2PA IT added a comment -

          Still an issue for us as well.

          c2pa_it C2PA IT added a comment - Still an issue for us as well.

          People

            rmangi rmangi
            rzanner rzanner
            Votes:
            6 Vote for this issue
            Watchers:
            11 Start watching this issue

            Dates

              Created:
              Updated: