Class SystemUtils
Helpers for java.lang.System.
If a system property cannot be read due to security restrictions, the corresponding field in this class will be set
to null and a message will be written to System.err.
#ThreadSafe#
- Since:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringTheawt.toolkitSystem Property.static final StringThefile.encodingSystem Property.static final StringDeprecated.static final booleanIstrueif this is Java version 1.1 (also 1.1.x versions).static final booleanIstrueif this is Java version 1.2 (also 1.2.x versions).static final booleanIstrueif this is Java version 1.3 (also 1.3.x versions).static final booleanIstrueif this is Java version 1.4 (also 1.4.x versions).static final booleanIstrueif this is Java version 1.5 (also 1.5.x versions).static final booleanIstrueif this is Java version 1.6 (also 1.6.x versions).static final booleanIstrueif this is Java version 1.7 (also 1.7.x versions).static final booleanIstrueif this is Java version 1.8 (also 1.8.x versions).static final booleanDeprecated.As of release 3.5, replaced byIS_JAVA_9static final booleanIstrueif this is Java version 10 (also 10.x versions).static final booleanIstrueif this is Java version 11 (also 11.x versions).static final booleanIstrueif this is Java version 12 (also 12.x versions).static final booleanIstrueif this is Java version 13 (also 13.x versions).static final booleanIstrueif this is Java version 14 (also 14.x versions).static final booleanIstrueif this is Java version 15 (also 15.x versions).static final booleanIstrueif this is Java version 9 (also 9.x versions).static final booleanIstrueif this is IBM OS/400.static final booleanIstrueif this is AIX.static final booleanIstrueif this is FreeBSD.static final booleanIstrueif this is HP-UX.static final booleanIstrueif this is Irix.static final booleanIstrueif this is Linux.static final booleanIstrueif this is Mac.static final booleanIstrueif this is Mac.static final booleanIstrueif this is Mac OS X Big Sur.static final booleanIstrueif this is Mac OS X Catalina.static final booleanIstrueif this is Mac OS X Cheetah.static final booleanIstrueif this is Mac OS X El Capitan.static final booleanIstrueif this is Mac OS X High Sierra.static final booleanIstrueif this is Mac OS X Jaguar.static final booleanIstrueif this is Mac OS X Leopard.static final booleanIstrueif this is Mac OS X Lion.static final booleanIstrueif this is Mac OS X Mavericks.static final booleanIstrueif this is Mac OS X Mojave.static final booleanIstrueif this is Mac OS X Mountain Lion.static final booleanIstrueif this is Mac OS X Panther.static final booleanIstrueif this is Mac OS X Puma.static final booleanIstrueif this is Mac OS X Sierra.static final booleanIstrueif this is Mac OS X Snow Leopard.static final booleanIstrueif this is Mac OS X Tiger.static final booleanIstrueif this is Mac OS X Yosemite.static final booleanIstrueif this is NetBSD.static final booleanIstrueif this is OpenBSD.static final booleanIstrueif this is OS/2.static final booleanIstrueif this is Solaris.static final booleanIstrueif this is SunOS.static final booleanIstrueif this is a UNIX like system, as in any of AIX, HP-UX, Irix, Linux, MacOSX, Solaris or SUN OS.static final booleanIstrueif this is Windows.static final booleanIstrueif this is Windows 10.static final booleanIstrueif this is Windows 2000.static final booleanIstrueif this is Windows 2003.static final booleanIstrueif this is Windows Server 2008.static final booleanIstrueif this is Windows Server 2012.static final booleanIstrueif this is Windows 7.static final booleanIstrueif this is Windows 8.static final booleanIstrueif this is Windows 95.static final booleanIstrueif this is Windows 98.static final booleanIstrueif this is Windows ME.static final booleanIstrueif this is Windows NT.static final booleanIstrueif this is Windows Vista.static final booleanIstrueif this is Windows XP.static final booleanIstrueif this is z/OS.static final StringThejava.awt.fontsSystem Property.static final StringThejava.awt.graphicsenvSystem Property.static final StringThejava.awt.headlessSystem Property.static final StringThejava.awt.printerjobSystem Property.static final StringThejava.class.pathSystem Property.static final StringThejava.class.versionSystem Property.static final StringThejava.compilerSystem Property.static final StringThejava.endorsed.dirsSystem Property.static final StringThejava.ext.dirsSystem Property.static final StringThejava.homeSystem Property.static final StringThejava.io.tmpdirSystem Property.static final StringThejava.library.pathSystem Property.static final StringThejava.runtime.nameSystem Property.static final StringThejava.runtime.versionSystem Property.static final StringThejava.specification.nameSystem Property.static final StringThejava.specification.vendorSystem Property.static final StringThejava.specification.versionSystem Property.static final StringThejava.util.prefs.PreferencesFactorySystem Property.static final StringThejava.vendorSystem Property.static final StringThejava.vendor.urlSystem Property.static final StringThejava.versionSystem Property.static final StringThejava.vm.infoSystem Property.static final StringThejava.vm.nameSystem Property.static final StringThejava.vm.specification.nameSystem Property.static final StringThejava.vm.specification.vendorSystem Property.static final StringThejava.vm.specification.versionSystem Property.static final StringThejava.vm.vendorSystem Property.static final StringThejava.vm.versionSystem Property.static final StringDeprecated.UseSystem.lineSeparator()instead, since it does not require a privilege check.static final StringTheos.archSystem Property.static final StringTheos.nameSystem Property.static final StringTheos.versionSystem Property.static final StringDeprecated.UseFile.pathSeparator, since it is guaranteed to be a string containing a single character and it does not require a privilege check.static final StringTheuser.countryoruser.regionSystem Property.static final StringTheuser.dirSystem Property.static final StringTheuser.homeSystem Property.static final StringTheuser.languageSystem Property.static final StringTheuser.nameSystem Property.static final StringTheuser.timezoneSystem Property. -
Constructor Summary
ConstructorsConstructorDescriptionSystemUtils instances should NOT be constructed in standard programming. -
Method Summary
Modifier and TypeMethodDescriptionstatic StringgetEnvironmentVariable(String name, String defaultValue) Gets an environment variable, defaulting todefaultValueif the variable cannot be read.static StringGets the host name from an environment variable (COMPUTERNAME on Windows, HOSTNAME elsewhere).static FileGets the Java home directory as aFile.static FileGets the Java IO temporary directory as aFile.static FileGets the user directory as aFile.static FileGets the user home directory as aFile.static StringGets the user name.static StringgetUserName(String defaultValue) Gets the user name.static booleanReturns whether theJAVA_AWT_HEADLESSvalue istrue.static booleanisJavaVersionAtLeast(JavaVersion requiredVersion) Is the Java version at least the requested version.static booleanisJavaVersionAtMost(JavaVersion requiredVersion) Is the Java version at most the requested version.
-
Field Details
-
AWT_TOOLKIT
The
awt.toolkitSystem Property.Holds a class name, on Windows XP this is
sun.awt.windows.WToolkit.On platforms without a GUI, this value is
null.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1
-
FILE_ENCODING
The
file.encodingSystem Property.File encoding, such as
Cp1252.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.0, Java 1.2
-
FILE_SEPARATOR
Deprecated.UseFile.separator, since it is guaranteed to be a string containing a single character and it does not require a privilege check.The
file.separatorSystem Property. The file separator is:"/"on UNIX"\"on Windows.
Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_AWT_FONTS
The
java.awt.fontsSystem Property.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1
-
JAVA_AWT_GRAPHICSENV
The
java.awt.graphicsenvSystem Property.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1
-
JAVA_AWT_HEADLESS
The
java.awt.headlessSystem Property. The value of this property is the String"true"or"false".Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1, Java 1.4
- See Also:
-
JAVA_AWT_PRINTERJOB
The
java.awt.printerjobSystem Property.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1
-
JAVA_CLASS_PATH
The
java.class.pathSystem Property. Java class path.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_CLASS_VERSION
The
java.class.versionSystem Property. Java class format version number.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_COMPILER
The
java.compilerSystem Property. Name of JIT compiler to use. First in JDK version 1.2. Not used in Sun JDKs after 1.2.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2. Not used in Sun versions after 1.2.
-
JAVA_ENDORSED_DIRS
The
java.endorsed.dirsSystem Property. Path of endorsed directory or directories.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.4
-
JAVA_EXT_DIRS
The
java.ext.dirsSystem Property. Path of extension directory or directories.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.3
-
JAVA_HOME
The
java.homeSystem Property. Java installation directory.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_IO_TMPDIR
The
java.io.tmpdirSystem Property. Default temp file path.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_LIBRARY_PATH
The
java.library.pathSystem Property. List of paths to search when loading libraries.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_RUNTIME_NAME
The
java.runtime.nameSystem Property. Java Runtime Environment name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.0, Java 1.3
-
JAVA_RUNTIME_VERSION
The
java.runtime.versionSystem Property. Java Runtime Environment version.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.0, Java 1.3
-
JAVA_SPECIFICATION_NAME
The
java.specification.nameSystem Property. Java Runtime Environment specification name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_SPECIFICATION_VENDOR
The
java.specification.vendorSystem Property. Java Runtime Environment specification vendor.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_SPECIFICATION_VERSION
The
java.specification.versionSystem Property. Java Runtime Environment specification version.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.3
-
JAVA_UTIL_PREFS_PREFERENCES_FACTORY
The
java.util.prefs.PreferencesFactorySystem Property. A class name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1, Java 1.4
-
JAVA_VENDOR
The
java.vendorSystem Property. Java vendor-specific string.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_VENDOR_URL
The
java.vendor.urlSystem Property. Java vendor URL.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_VERSION
The
java.versionSystem Property. Java version number.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
JAVA_VM_INFO
The
java.vm.infoSystem Property. Java Virtual Machine implementation info.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.0, Java 1.2
-
JAVA_VM_NAME
The
java.vm.nameSystem Property. Java Virtual Machine implementation name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_VM_SPECIFICATION_NAME
The
java.vm.specification.nameSystem Property. Java Virtual Machine specification name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_VM_SPECIFICATION_VENDOR
The
java.vm.specification.vendorSystem Property. Java Virtual Machine specification vendor.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_VM_SPECIFICATION_VERSION
The
java.vm.specification.versionSystem Property. Java Virtual Machine specification version.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_VM_VENDOR
The
java.vm.vendorSystem Property. Java Virtual Machine implementation vendor.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
JAVA_VM_VERSION
The
java.vm.versionSystem Property. Java Virtual Machine implementation version.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.2
-
LINE_SEPARATOR
Deprecated.UseSystem.lineSeparator()instead, since it does not require a privilege check.The
line.separatorSystem Property. Line separator ("\n"on UNIX).Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
OS_ARCH
The
os.archSystem Property. Operating system architecture.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
OS_NAME
The
os.nameSystem Property. Operating system name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
OS_VERSION
The
os.versionSystem Property. Operating system version.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
PATH_SEPARATOR
Deprecated.UseFile.pathSeparator, since it is guaranteed to be a string containing a single character and it does not require a privilege check.The
path.separatorSystem Property. Path separator (":"on UNIX).Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
USER_COUNTRY
The
user.countryoruser.regionSystem Property. User's country code, such asGB. First in Java version 1.2 asuser.region. Renamed touser.countryin 1.4Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.0, Java 1.2
-
USER_DIR
The
user.dirSystem Property. User's current working directory.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
USER_HOME
The
user.homeSystem Property. User's home directory.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
USER_LANGUAGE
The
user.languageSystem Property. User's language code, such as"en".Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.0, Java 1.2
-
USER_NAME
The
user.nameSystem Property. User's account name.Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- Java 1.1
-
USER_TIMEZONE
The
user.timezoneSystem Property. For example:"America/Los_Angeles".Defaults to
nullif the runtime does not have security access to read this property or the property does not exist.This value is initialized when the class is loaded. If
System.setProperty(String,String)orSystem.setProperties(java.util.Properties)is called after this class is loaded, the value will be out of sync with that System property.- Since:
- 2.1
-
IS_JAVA_1_1
Is
trueif this is Java version 1.1 (also 1.1.x versions).The field will return
falseifJAVA_VERSIONisnull. -
IS_JAVA_1_2
Is
trueif this is Java version 1.2 (also 1.2.x versions).The field will return
falseifJAVA_VERSIONisnull. -
IS_JAVA_1_3
Is
trueif this is Java version 1.3 (also 1.3.x versions).The field will return
falseifJAVA_VERSIONisnull. -
IS_JAVA_1_4
Is
trueif this is Java version 1.4 (also 1.4.x versions).The field will return
falseifJAVA_VERSIONisnull. -
IS_JAVA_1_5
Is
trueif this is Java version 1.5 (also 1.5.x versions).The field will return
falseifJAVA_VERSIONisnull. -
IS_JAVA_1_6
Is
trueif this is Java version 1.6 (also 1.6.x versions).The field will return
falseifJAVA_VERSIONisnull. -
IS_JAVA_1_7
Is
trueif this is Java version 1.7 (also 1.7.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.0
-
IS_JAVA_1_8
Is
trueif this is Java version 1.8 (also 1.8.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.3.2
-
IS_JAVA_1_9
Deprecated.As of release 3.5, replaced byIS_JAVA_9Is
trueif this is Java version 1.9 (also 1.9.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.4
-
IS_JAVA_9
Is
trueif this is Java version 9 (also 9.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.5
-
IS_JAVA_10
Is
trueif this is Java version 10 (also 10.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.7
-
IS_JAVA_11
Is
trueif this is Java version 11 (also 11.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.8
-
IS_JAVA_12
Is
trueif this is Java version 12 (also 12.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.9
-
IS_JAVA_13
Is
trueif this is Java version 13 (also 13.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.9
-
IS_JAVA_14
Is
trueif this is Java version 14 (also 14.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.10
-
IS_JAVA_15
Is
trueif this is Java version 15 (also 15.x versions).The field will return
falseifJAVA_VERSIONisnull.- Since:
- 3.10
-
IS_OS_AIX
Is
trueif this is AIX.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_HP_UX
Is
trueif this is HP-UX.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_400
Is
trueif this is IBM OS/400.The field will return
falseifOS_NAMEisnull.- Since:
- 3.3
-
IS_OS_IRIX
Is
trueif this is Irix.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_LINUX
Is
trueif this is Linux.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_MAC
Is
trueif this is Mac.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_MAC_OSX
Is
trueif this is Mac.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_MAC_OSX_CHEETAH
Is
trueif this is Mac OS X Cheetah.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_PUMA
Is
trueif this is Mac OS X Puma.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_JAGUAR
Is
trueif this is Mac OS X Jaguar.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_PANTHER
Is
trueif this is Mac OS X Panther.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_TIGER
Is
trueif this is Mac OS X Tiger.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_LEOPARD
Is
trueif this is Mac OS X Leopard.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_SNOW_LEOPARD
Is
trueif this is Mac OS X Snow Leopard.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_LION
Is
trueif this is Mac OS X Lion.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_MOUNTAIN_LION
Is
trueif this is Mac OS X Mountain Lion.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_MAVERICKS
Is
trueif this is Mac OS X Mavericks.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_YOSEMITE
Is
trueif this is Mac OS X Yosemite.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_MAC_OSX_EL_CAPITAN
Is
trueif this is Mac OS X El Capitan.The field will return
falseifOS_NAMEisnull.- Since:
- 3.5
-
IS_OS_MAC_OSX_SIERRA
Is
trueif this is Mac OS X Sierra.The field will return
falseifOS_NAMEisnull.- Since:
- 3.12.0
-
IS_OS_MAC_OSX_HIGH_SIERRA
Is
trueif this is Mac OS X High Sierra.The field will return
falseifOS_NAMEisnull.- Since:
- 3.12.0
-
IS_OS_MAC_OSX_MOJAVE
Is
trueif this is Mac OS X Mojave.The field will return
falseifOS_NAMEisnull.- Since:
- 3.12.0
-
IS_OS_MAC_OSX_CATALINA
Is
trueif this is Mac OS X Catalina.The field will return
falseifOS_NAMEisnull.- Since:
- 3.12.0
-
IS_OS_MAC_OSX_BIG_SUR
Is
trueif this is Mac OS X Big Sur.The field will return
falseifOS_NAMEisnull.- Since:
- 3.12.0
-
IS_OS_FREE_BSD
Is
trueif this is FreeBSD.The field will return
falseifOS_NAMEisnull.- Since:
- 3.1
-
IS_OS_OPEN_BSD
Is
trueif this is OpenBSD.The field will return
falseifOS_NAMEisnull.- Since:
- 3.1
-
IS_OS_NET_BSD
Is
trueif this is NetBSD.The field will return
falseifOS_NAMEisnull.- Since:
- 3.1
-
IS_OS_OS2
Is
trueif this is OS/2.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_SOLARIS
Is
trueif this is Solaris.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_SUN_OS
Is
trueif this is SunOS.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_UNIX
Is
trueif this is a UNIX like system, as in any of AIX, HP-UX, Irix, Linux, MacOSX, Solaris or SUN OS.The field will return
falseifOS_NAMEisnull.- Since:
- 2.1
-
IS_OS_WINDOWS
Is
trueif this is Windows.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_2000
Is
trueif this is Windows 2000.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_2003
Is
trueif this is Windows 2003.The field will return
falseifOS_NAMEisnull.- Since:
- 3.1
-
IS_OS_WINDOWS_2008
Is
trueif this is Windows Server 2008.The field will return
falseifOS_NAMEisnull.- Since:
- 3.1
-
IS_OS_WINDOWS_2012
Is
trueif this is Windows Server 2012.The field will return
falseifOS_NAMEisnull.- Since:
- 3.4
-
IS_OS_WINDOWS_95
Is
trueif this is Windows 95.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_98
Is
trueif this is Windows 98.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_ME
Is
trueif this is Windows ME.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_NT
Is
trueif this is Windows NT.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_XP
Is
trueif this is Windows XP.The field will return
falseifOS_NAMEisnull.- Since:
- 2.0
-
IS_OS_WINDOWS_VISTA
Is
trueif this is Windows Vista.The field will return
falseifOS_NAMEisnull.- Since:
- 2.4
-
IS_OS_WINDOWS_7
Is
trueif this is Windows 7.The field will return
falseifOS_NAMEisnull.- Since:
- 3.0
-
IS_OS_WINDOWS_8
Is
trueif this is Windows 8.The field will return
falseifOS_NAMEisnull.- Since:
- 3.2
-
IS_OS_WINDOWS_10
Is
trueif this is Windows 10.The field will return
falseifOS_NAMEisnull.- Since:
- 3.5
-
IS_OS_ZOS
Is
trueif this is z/OS.The field will return
falseifOS_NAMEisnull.- Since:
- 3.5
-
-
Constructor Details
-
SystemUtils
public SystemUtils()SystemUtils instances should NOT be constructed in standard programming. Instead, the class should be used as
SystemUtils.FILE_SEPARATOR.This constructor is public to permit tools that require a JavaBean instance to operate.
-
-
Method Details
-
getEnvironmentVariable
Gets an environment variable, defaulting to
defaultValueif the variable cannot be read.If a
SecurityExceptionis caught, the return value isdefaultValueand a message is written toSystem.err.- Parameters:
name- the environment variable namedefaultValue- the default value- Returns:
- the environment variable value or
defaultValueif a security problem occurs - Since:
- 3.8
-
getHostName
Gets the host name from an environment variable (COMPUTERNAME on Windows, HOSTNAME elsewhere).If you want to know what the network stack says is the host name, you should use
InetAddress.getLocalHost().getHostName().- Returns:
- the host name. Will be
nullif the environment variable is not defined. - Since:
- 3.6
-
getJavaHome
Gets the Java home directory as a
File.- Returns:
- a directory
- Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.- Since:
- 2.1
- See Also:
-
getJavaIoTmpDir
Gets the Java IO temporary directory as a
File.- Returns:
- a directory
- Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.- Since:
- 2.1
- See Also:
-
getUserDir
Gets the user directory as a
File.- Returns:
- a directory
- Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.- Since:
- 2.1
- See Also:
-
getUserHome
Gets the user home directory as a
File.- Returns:
- a directory
- Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.- Since:
- 2.1
- See Also:
-
getUserName
Gets the user name.
- Returns:
- a name
- Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.- Since:
- 3.10
- See Also:
-
getUserName
Gets the user name.
- Parameters:
defaultValue- A default value.- Returns:
- a name
- Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.- Since:
- 3.10
- See Also:
-
isJavaAwtHeadless
Returns whether theJAVA_AWT_HEADLESSvalue istrue.- Returns:
trueifJAVA_AWT_HEADLESSis"true",falseotherwise.- Since:
- 2.1, Java 1.4
- See Also:
-
isJavaVersionAtLeast
Is the Java version at least the requested version.
- Parameters:
requiredVersion- the required version, for example 1.31f- Returns:
trueif the actual version is equal or greater than the required version
-
isJavaVersionAtMost
Is the Java version at most the requested version.
Example input:
- Parameters:
requiredVersion- the required version, for example 1.31f- Returns:
trueif the actual version is equal or less than the required version- Since:
- 3.9
-
File.separator, since it is guaranteed to be a string containing a single character and it does not require a privilege check.