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

Define manifest header in the jpi file to capture minimum Java requirement

    • Plugin POM 3.29

      Some plugins depend on Java6 (either by compiled for Java6 for by having critical dependencies that are compiled for Java6) while others still work on Java5. The manifest should declare this so that the update center can warn users appropritely.

          [JENKINS-20679] Define manifest header in the jpi file to capture minimum Java requirement

          Kohsuke Kawaguchi created issue -

          Alex Earl added a comment -

          I'm willing to look into this, but I am unsure how to determine the minimum JDK required for a plugin during the plugin build. Is there something in the maven setup that specifies this?

          Alex Earl added a comment - I'm willing to look into this, but I am unsure how to determine the minimum JDK required for a plugin during the plugin build. Is there something in the maven setup that specifies this?

          Jesse Glick added a comment -

          slide_o_mix see upcoming plugin POM proposal.

          Jesse Glick added a comment - slide_o_mix see upcoming plugin POM proposal.
          Jesse Glick made changes -
          Component/s New: core [ 15593 ]
          Component/s Original: plugin-proposals [ 15491 ]
          Jesse Glick made changes -
          Labels New: api
          Jesse Glick made changes -
          Labels Original: api New: api java
          Jesse Glick made changes -
          Summary Original: Define manifest header in the jpi file to capture minimum JDK requirement New: Define manifest header in the jpi file to capture minimum Java requirement

          Jesse Glick added a comment -

          Really needs multiple components. First, a change to maven-hpi-plugin to record a Java version in the manifest; easy now since java.level is defined in the 2.x POM, so we could just configure the mojo based on that. Second, a change to the update center generator to expose this manifest field in the update center JSON (I think it does not include every field it sees, just the ones explicitly called out). Third, a change to core to block you from installing a new/updated plugin with a Java version newer than what you are currently running.

          Jesse Glick added a comment - Really needs multiple components. First, a change to maven-hpi-plugin to record a Java version in the manifest; easy now since java.level is defined in the 2.x POM, so we could just configure the mojo based on that. Second, a change to the update center generator to expose this manifest field in the update center JSON (I think it does not include every field it sees, just the ones explicitly called out). Third, a change to core to block you from installing a new/updated plugin with a Java version newer than what you are currently running.
          Jesse Glick made changes -
          Labels Original: api java New: api java updateCenter
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 152488 ] New: JNJira + In-Review [ 178220 ]

            oleg_nenashev Oleg Nenashev
            kohsuke Kohsuke Kawaguchi
            Votes:
            11 Vote for this issue
            Watchers:
            12 Start watching this issue

              Created:
              Updated:
              Resolved: