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
Modifier and TypeFieldDescriptionstatic final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
static final JavaSpecificationVersion
Fields inherited from class hudson.util.VersionNumber
DESCENDING
-
Constructor Summary
ConstructorDescriptionJavaSpecificationVersion
(String version) Constructor which automatically normalizes version strings. -
Method Summary
Modifier and TypeMethodDescriptionstatic JavaSpecificationVersion
Get the Java Specification version for the current JVMstatic JavaSpecificationVersion
fromClassVersion
(int classVersion) Given a class file version, get the correspondingJavaSpecificationVersion
.static JavaSpecificationVersion
fromReleaseVersion
(int releaseVersion) Given a release version, get the correspondingJavaSpecificationVersion
.int
Get the corresponding class file version.int
Get 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_NAME
property.
-