Package io.jenkins.lib.versionnumber
Class JavaSpecificationVersion
java.lang.Object
hudson.util.VersionNumber
io.jenkins.lib.versionnumber.JavaSpecificationVersion
- All Implemented Interfaces:
Comparable<VersionNumber>
Java Version Specification.
Implemented according to JEP 223
- Since:
- 1.6
- Author:
- Oleg Nenashev
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionstatic final JavaSpecificationVersionFields inherited from class hudson.util.VersionNumber
DESCENDING -
Constructor Summary
ConstructorsConstructorDescriptionJavaSpecificationVersion(String version) Constructor which automatically normalizes version strings. -
Method Summary
Modifier and TypeMethodDescriptionstatic JavaSpecificationVersionGet the Java Specification version for the current JVMstatic JavaSpecificationVersionfromClassVersion(int classVersion) Given a class file version, get the correspondingJavaSpecificationVersion.static JavaSpecificationVersionfromReleaseVersion(int releaseVersion) Given a release version, get the correspondingJavaSpecificationVersion.intGet the corresponding class file version.intGet the corresponding release version.Methods inherited from class hudson.util.VersionNumber
compareTo, digit, equals, getDigitAt, hashCode, isNewerThan, isNewerThanOrEqualTo, isOlderThan, isOlderThanOrEqualTo, toString
-
Field Details
-
JAVA_5
-
JAVA_6
-
JAVA_7
-
JAVA_8
-
JAVA_9
-
JAVA_10
-
JAVA_11
-
JAVA_12
-
JAVA_13
-
-
Constructor Details
-
JavaSpecificationVersion
Constructor which automatically normalizes version strings.- Parameters:
version- Java specification version, should follow JEP-223 or the previous format.- Throws:
NumberFormatException- Illegal Java specification version number
-
-
Method Details
-
fromReleaseVersion
Given a release version, get the correspondingJavaSpecificationVersion.- Parameters:
releaseVersion- The release version; e.g., 8, 11, or 17.- Returns:
- The
JavaSpecificationVersion; e.g., 1.8, 11, or 17.
-
toReleaseVersion
public int toReleaseVersion()Get the corresponding release version.- Returns:
- The release version; e.g., 8, 11, or 17.
-
fromClassVersion
Given a class file version, get the correspondingJavaSpecificationVersion.- Parameters:
classVersion- The class version; e.g., 52, 55, or 61.- Returns:
- The
JavaSpecificationVersion; e.g., 1.8, 11, or 17. - Throws:
IllegalArgumentException- If the Java specification version for the given class version is unknown.
-
toClassVersion
public int toClassVersion()Get the corresponding class file version.- Returns:
- The class file version; e.g., 52, 55, or 61.
- Throws:
IllegalArgumentException- If the class version for the given Java Specification Version is unknown.
-
forCurrentJVM
Get the Java Specification version for the current JVM- Returns:
- Java Specification version
- Throws:
NumberFormatException- Version parsing errorIllegalStateException- JVM does not specify the mandatoryJAVA_SPEC_VERSION_PROPERTY_NAMEproperty.
-