public final class SystemUtils
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
private static double |
JIGSAW_JAVA_VERSION |
private static int |
PROC_STATUS_PID_FIRST_CHARS |
| Modifier | Constructor and Description |
|---|---|
private |
SystemUtils() |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
endsWithJavaPath(java.lang.String jvmExecPath) |
(package private) static boolean |
isBuiltInJava9AtLeast() |
static boolean |
isJava9AtLeast(java.lang.Double version) |
static boolean |
isJava9AtLeast(java.lang.String jvmExecutablePath) |
static java.lang.Long |
pid() |
(package private) static java.lang.Long |
pidOnJava9() |
(package private) static java.lang.Long |
pidOnJMX() |
(package private) static java.lang.Long |
pidStatusOnBSD()
The process status.
|
(package private) static java.lang.Long |
pidStatusOnLinux() |
static java.lang.ClassLoader |
platformClassLoader() |
(package private) static java.lang.ClassLoader |
reflectClassLoader(java.lang.Class<?> target,
java.lang.String getterMethodName) |
static java.io.File |
toJdkHomeFromJre()
If system property java.home is /jdk (since jdk9) or /jdk/jre (prior to jdk9) then
the absolute path to
JDK home is returned /jdk.
|
(package private) static java.io.File |
toJdkHomeFromJre(java.lang.String jreHome)
If
jreHome is /jdk (since jdk9) or /jdk/jre (prior to jdk9) then
the absolute path to JDK home is returned /jdk. |
static java.io.File |
toJdkHomeFromJvmExec(java.lang.String jvmExecutable)
If
jvmExecutable is /jdk/bin/java (since jdk9) or /jdk/jre/bin/java (prior to jdk9)
then the absolute path to JDK home is returned /jdk. |
static java.lang.Double |
toJdkVersionFromReleaseFile(java.io.File jdkHome) |
private static final double JIGSAW_JAVA_VERSION
private static final int PROC_STATUS_PID_FIRST_CHARS
public static boolean endsWithJavaPath(java.lang.String jvmExecPath)
jvmExecPath - e.g. /jdk/bin/java, /jdk/jre/bin/javatrue if jvmExecPath is path to java binary executorpublic static java.io.File toJdkHomeFromJvmExec(java.lang.String jvmExecutable)
jvmExecutable is /jdk/bin/java (since jdk9) or /jdk/jre/bin/java (prior to jdk9)
then the absolute path to JDK home is returned /jdk.
jvmExecutable is incorrect.jvmExecutable - /jdk/bin/java* or /jdk/jre/bin/java*public static java.io.File toJdkHomeFromJre()
static java.io.File toJdkHomeFromJre(java.lang.String jreHome)
jreHome is /jdk (since jdk9) or /jdk/jre (prior to jdk9) then
the absolute path to JDK home is returned /jdk.
jreHome must be taken from system property java.home.jreHome - path to /jdk or /jdk/jrepublic static java.lang.Double toJdkVersionFromReleaseFile(java.io.File jdkHome)
public static boolean isJava9AtLeast(java.lang.String jvmExecutablePath)
static boolean isBuiltInJava9AtLeast()
public static boolean isJava9AtLeast(java.lang.Double version)
public static java.lang.ClassLoader platformClassLoader()
public static java.lang.Long pid()
static java.lang.Long pidOnJMX()
static java.lang.Long pidStatusOnLinux()
throws java.lang.Exception
java.lang.Exceptionstatic java.lang.Long pidStatusOnBSD()
throws java.lang.Exception
java.lang.Exception - if could not read /proc/curproc/statusstatic java.lang.Long pidOnJava9()
static java.lang.ClassLoader reflectClassLoader(java.lang.Class<?> target,
java.lang.String getterMethodName)