org.springframework.core

## Class JdkVersion

- java.lang.Object
- - org.springframework.core.JdkVersion

-     public abstract class JdkVersion
      extends Object

  Internal helper class used to find the Java/JVM version that Spring is operating on, to allow for automatically adapting to the present platform's capabilities.

  Note that Spring requires JVM 1.5 or higher, as of Spring 3.0.

  Author:
    Rod Johnson, Juergen Hoeller, Rick Evans

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `JAVA_13` Constant identifying the 1.3.x JVM (JDK 1.3).
    `static int` | `JAVA_14` Constant identifying the 1.4.x JVM (J2SE 1.4).
    `static int` | `JAVA_15` Constant identifying the 1.5 JVM (Java 5).
    `static int` | `JAVA_16` Constant identifying the 1.6 JVM (Java 6).
    `static int` | `JAVA_17` Constant identifying the 1.7 JVM (Java 7).
    `static int` | `JAVA_18` Constant identifying the 1.8 JVM (Java 8).

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JdkVersion()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static String` | `getJavaVersion()` Return the full Java version string, as returned by `System.getProperty("java.version")`.
    `static int` | `getMajorJavaVersion()` Get the major version code.
    `static boolean` | `isAtLeastJava14()` Deprecated. as of Spring 3.0 which requires Java 1.5+
    `static boolean` | `isAtLeastJava15()` Deprecated. as of Spring 3.0 which requires Java 1.5+
    `static boolean` | `isAtLeastJava16()` Deprecated. as of Spring 3.0, in favor of reflective checks for the specific Java 1.6 classes of interest

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### JAVA_13

          public static final int JAVA_13

      Constant identifying the 1.3.x JVM (JDK 1.3).
      See Also:
        Constant Field Values

    - #### JAVA_14

          public static final int JAVA_14

      Constant identifying the 1.4.x JVM (J2SE 1.4).
      See Also:
        Constant Field Values

    - #### JAVA_15

          public static final int JAVA_15

      Constant identifying the 1.5 JVM (Java 5).
      See Also:
        Constant Field Values

    - #### JAVA_16

          public static final int JAVA_16

      Constant identifying the 1.6 JVM (Java 6).
      See Also:
        Constant Field Values

    - #### JAVA_17

          public static final int JAVA_17

      Constant identifying the 1.7 JVM (Java 7).
      See Also:
        Constant Field Values

    - #### JAVA_18

          public static final int JAVA_18

      Constant identifying the 1.8 JVM (Java 8).
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### JdkVersion

          public JdkVersion()

  - ### Method Detail

    - #### getJavaVersion

          public static String getJavaVersion()

      Return the full Java version string, as returned by `System.getProperty("java.version")`.
      Returns:
        the full Java version string
      See Also:
        `System.getProperty(String)`

    - #### getMajorJavaVersion

          public static int getMajorJavaVersion()

      Get the major version code. This means we can do things like `if (getMajorJavaVersion() >= JAVA_17)`.
      Returns:
        a code comparable to the JAVA_XX codes in this class
      See Also:
        `JAVA_13`, `JAVA_14`, `JAVA_15`, `JAVA_16`, `JAVA_17`

    - #### isAtLeastJava14

          @Deprecated
          public static boolean isAtLeastJava14()

      Deprecated. as of Spring 3.0 which requires Java 1.5+
      Convenience method to determine if the current JVM is at least Java 1.4.
      Returns:
        `true` if the current JVM is at least Java 1.4
      See Also:
        `getMajorJavaVersion()`, `JAVA_14`, `JAVA_15`, `JAVA_16`, `JAVA_17`

    - #### isAtLeastJava15

          @Deprecated
          public static boolean isAtLeastJava15()

      Deprecated. as of Spring 3.0 which requires Java 1.5+
      Convenience method to determine if the current JVM is at least Java 1.5 (Java 5).
      Returns:
        `true` if the current JVM is at least Java 1.5
      See Also:
        `getMajorJavaVersion()`, `JAVA_15`, `JAVA_16`, `JAVA_17`

    - #### isAtLeastJava16

          @Deprecated
          public static boolean isAtLeastJava16()

      Deprecated. as of Spring 3.0, in favor of reflective checks for the specific Java 1.6 classes of interest
      Convenience method to determine if the current JVM is at least Java 1.6 (Java 6).
      Returns:
        `true` if the current JVM is at least Java 1.6
      See Also:
        `getMajorJavaVersion()`, `JAVA_16`, `JAVA_17`