Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8162687

java.{vm.}?specification.version is always set to the Java major version

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P4 P4
    • tbd
    • 9
    • other-libs

      java.{vm.?}specification.version system properties are independent of java.version and are determined by the JCP (either a JSR or an Maintenance Release(MR)). While it makes sense for these values to be $MAJOR for major releases, the JCP may choose to set them to other values during a subsequent MR. In the case of Java SE 9, if there's ever an MR against JSR 379 (Java SE 9 Release Contents) the values may need to be updated to something besides $MAJOR.

      The value of the system property java.specification.version is currently set
      in the build file common/autoconf/spec.gmk:

          VERSION_SPECIFICATION := @VERSION_MAJOR@

      The value of the system property java.vm.specification.version is currently set in VM code in src/share/vm/runtime/arguments.cpp in the method Arguments::init_version_specific_system_properties():

          uint32_t spec_version = JDK_Version::current().major_version();

      Ideally, these two issues should be handled at the same time.

            iris Iris Clark
            iris Iris Clark
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: