org.apache.commons.lang
Class SystemUtils

java.lang.Object
  extended byorg.apache.commons.lang.SystemUtils

public class SystemUtils
extends Object

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.

Since:
1.0
Version:
$Id: SystemUtils.java,v 1.23 2003/08/22 16:34:06 ggregory Exp $
Author:
Based on code from Avalon Excalibur, Based on code from Lucene, Stephen Colebourne, Steve Downey, Gary Gregory, Michael Becke, Tetsuya Kaneuchi

Field Summary
static String FILE_ENCODING
          The file.encoding System Property.
static String FILE_SEPARATOR
          The file.separator System Property.
static boolean IS_JAVA_1_1
          Is true if this is Java version 1.1 (also 1.1.x versions).
static boolean IS_JAVA_1_2
          Is true if this is Java version 1.2 (also 1.2.x versions).
static boolean IS_JAVA_1_3
          Is true if this is Java version 1.3 (also 1.3.x versions).
static boolean IS_JAVA_1_4
          Is true if this is Java version 1.4 (also 1.4.x versions).
static boolean IS_JAVA_1_5
          Is true if this is Java version 1.5 (also 1.5.x versions).
static boolean IS_OS_AIX
          Is true if this is AIX.
static boolean IS_OS_HP_UX
          Is true if this is HP-UX.
static boolean IS_OS_IRIX
          Is true if this is Irix.
static boolean IS_OS_LINUX
          Is true if this is Linux.
static boolean IS_OS_MAC
          Is true if this is Mac.
static boolean IS_OS_MAC_OSX
          Is true if this is Mac.
static boolean IS_OS_OS2
          Is true if this is OS/2.
static boolean IS_OS_SOLARIS
          Is true if this is Solaris.
static boolean IS_OS_SUN_OS
          Is true if this is SunOS.
static boolean IS_OS_WINDOWS
          Is true if this is Windows.
static boolean IS_OS_WINDOWS_2000
          Is true if this is Windows 2000.
static boolean IS_OS_WINDOWS_95
          Is true if this is Windows 95.
static boolean IS_OS_WINDOWS_98
          Is true if this is Windows 98.
static boolean IS_OS_WINDOWS_ME
          Is true if this is Windows ME.
static boolean IS_OS_WINDOWS_NT
          Is true if this is Windows NT.
static boolean IS_OS_WINDOWS_XP
          Is true if this is Windows XP.
static String JAVA_CLASS_PATH
          The java.class.path System Property.
static String JAVA_CLASS_VERSION
          The java.class.version System Property.
static String JAVA_COMPILER
          The java.compiler System Property.
static String JAVA_EXT_DIRS
          The java.ext.dirs System Property.
static String JAVA_HOME
          The java.home System Property.
static String JAVA_IO_TMPDIR
          The java.io.tmpdir System Property.
static String JAVA_LIBRARY_PATH
          The java.library.path System Property.
static String JAVA_RUNTIME_NAME
          The java.runtime.name System Property.
static String JAVA_RUNTIME_VERSION
          The java.runtime.version System Property.
static String JAVA_SPECIFICATION_NAME
          The java.specification.name System Property.
static String JAVA_SPECIFICATION_VENDOR
          The java.specification.vendor System Property.
static String JAVA_SPECIFICATION_VERSION
          The java.specification.version System Property.
static String JAVA_VENDOR
          The java.vendor System Property.
static String JAVA_VENDOR_URL
          The java.vendor.url System Property.
static String JAVA_VERSION
          The java.version System Property.
static float JAVA_VERSION_FLOAT
          Gets the Java version as a float.
static int JAVA_VERSION_INT
          Gets the Java version as an int.
static String JAVA_VM_INFO
          The java.vm.info System Property.
static String JAVA_VM_NAME
          The java.vm.name System Property.
static String JAVA_VM_SPECIFICATION_NAME
          The java.vm.specification.name System Property.
static String JAVA_VM_SPECIFICATION_VENDOR
          The java.vm.specification.vendor System Property.
static String JAVA_VM_SPECIFICATION_VERSION
          The java.vm.specification.version System Property.
static String JAVA_VM_VENDOR
          The java.vm.vendor System Property.
static String JAVA_VM_VERSION
          The java.vm.version System Property.
static String LINE_SEPARATOR
          The line.separator System Property.
static String OS_ARCH
          The os.arch System Property.
static String OS_NAME
          The os.name System Property.
static String OS_VERSION
          The os.version System Property.
static String PATH_SEPARATOR
          The path.separator System Property.
static String USER_COUNTRY
          The user.country or user.region System Property.
static String USER_DIR
          The user.dir System Property.
static String USER_HOME
          The user.home System Property.
static String USER_LANGUAGE
          The user.language System Property.
static String USER_NAME
          The user.name System Property.
 
Constructor Summary
SystemUtils()
          SystemUtils instances should NOT be constructed in standard programming.
 
Method Summary
static float getJavaVersion()
          Deprecated. Use JAVA_VERSION_FLOAT instead. Method will be removed in Commons Lang 3.0.
static boolean isJavaVersionAtLeast(float requiredVersion)
          Is the Java version at least the requested version.
static boolean isJavaVersionAtLeast(int requiredVersion)
          Is the Java version at least the requested version.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FILE_ENCODING

public static final String FILE_ENCODING

The file.encoding System Property.

File encoding, such as Cp1252.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
2.0, Java 1.2.

FILE_SEPARATOR

public static final String FILE_SEPARATOR

The file.separator System Property. File separator ("/" on UNIX).

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1.

JAVA_CLASS_PATH

public static final String JAVA_CLASS_PATH

The java.class.path System Property. Java class path.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1.

JAVA_CLASS_VERSION

public static final String JAVA_CLASS_VERSION

The java.class.version System Property. Java class format version number.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1.

JAVA_COMPILER

public static final String JAVA_COMPILER

The java.compiler System Property. Name of JIT compiler to use. First in JDK version 1.2. Not used in Sun JDKs after 1.2.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2. Not used in Sun versions after 1.2.

JAVA_EXT_DIRS

public static final String JAVA_EXT_DIRS

The java.ext.dirs System Property. Path of extension directory or directories.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.3

JAVA_HOME

public static final String JAVA_HOME

The java.home System Property. Java installation directory.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

JAVA_IO_TMPDIR

public static final String JAVA_IO_TMPDIR

The java.io.tmpdir System Property. Default temp file path.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_LIBRARY_PATH

public static final String JAVA_LIBRARY_PATH

The java.library.path System Property. List of paths to search when loading libraries.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_RUNTIME_NAME

public static final String JAVA_RUNTIME_NAME

The java.runtime.name System Property. Java Runtime Environment name.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
2.0, Java 1.3

JAVA_RUNTIME_VERSION

public static final String JAVA_RUNTIME_VERSION

The java.runtime.version System Property. Java Runtime Environment version.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
2.0, Java 1.3

JAVA_SPECIFICATION_NAME

public static final String JAVA_SPECIFICATION_NAME

The java.specification.name System Property. Java Runtime Environment specification name.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_SPECIFICATION_VENDOR

public static final String JAVA_SPECIFICATION_VENDOR

The java.specification.vendor System Property. Java Runtime Environment specification vendor.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_SPECIFICATION_VERSION

public static final String JAVA_SPECIFICATION_VERSION

The java.specification.version System Property. Java Runtime Environment specification version.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.3

JAVA_VENDOR

public static final String JAVA_VENDOR

The java.vendor System Property. Java vendor-specific string.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

JAVA_VENDOR_URL

public static final String JAVA_VENDOR_URL

The java.vendor.url System Property. Java vendor URL.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

JAVA_VERSION

public static final String JAVA_VERSION

The java.version System Property. Java version number.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

JAVA_VM_INFO

public static final String JAVA_VM_INFO

The java.vm.info System Property. Java Virtual Machine implementation info.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
2.0, Java 1.2

JAVA_VM_NAME

public static final String JAVA_VM_NAME

The java.vm.name System Property. Java Virtual Machine implementation name.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_VM_SPECIFICATION_NAME

public static final String JAVA_VM_SPECIFICATION_NAME

The java.vm.specification.name System Property. Java Virtual Machine specification name.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_VM_SPECIFICATION_VENDOR

public static final String JAVA_VM_SPECIFICATION_VENDOR

The java.vm.specification.vendor System Property. Java Virtual Machine specification vendor.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_VM_SPECIFICATION_VERSION

public static final String JAVA_VM_SPECIFICATION_VERSION

The java.vm.specification.version System Property. Java Virtual Machine specification version.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_VM_VENDOR

public static final String JAVA_VM_VENDOR

The java.vm.vendor System Property. Java Virtual Machine implementation vendor.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

JAVA_VM_VERSION

public static final String JAVA_VM_VERSION

The java.vm.version System Property. Java Virtual Machine implementation version.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.2

LINE_SEPARATOR

public static final String LINE_SEPARATOR

The line.separator System Property. Line separator ("\n<" on UNIX).

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

OS_ARCH

public static final String OS_ARCH

The os.arch System Property. Operating system architecture.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

OS_NAME

public static final String OS_NAME

The os.name System Property. Operating system name.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

OS_VERSION

public static final String OS_VERSION

The os.version System Property. Operating system version.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

PATH_SEPARATOR

public static final String PATH_SEPARATOR

The path.separator System Property. Path separator (":" on UNIX).

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

USER_COUNTRY

public static final String USER_COUNTRY

The user.country or user.region System Property. User's country code, such as GB. First in JDK version 1.2 as user.region. Renamed to user.country in 1.4

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
2.0, Java 1.2

USER_DIR

public static final String USER_DIR

The user.dir System Property. User's current working directory.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

USER_HOME

public static final String USER_HOME

The user.home System Property. User's home directory.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

USER_LANGUAGE

public static final String USER_LANGUAGE

The user.language System Property. User's language code, such as 'en'.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
2.0, Java 1.2

USER_NAME

public static final String USER_NAME

The user.name System Property. User's account name.

Defaults to null if the runtime does not have security access to read this property or the property does not exist.

Since:
Java 1.1

JAVA_VERSION_FLOAT

public static final float JAVA_VERSION_FLOAT

Gets the Java version as a float.

Example return values:

The field will return zero if JAVA_VERSION is null.

Since:
2.0

JAVA_VERSION_INT

public static final int JAVA_VERSION_INT

Gets the Java version as an int.

Example return values:

The field will return zero if JAVA_VERSION is null.

Since:
2.0

IS_JAVA_1_1

public static final boolean IS_JAVA_1_1

Is true if this is Java version 1.1 (also 1.1.x versions).

The field will return false if JAVA_VERSION is null.


IS_JAVA_1_2

public static final boolean IS_JAVA_1_2

Is true if this is Java version 1.2 (also 1.2.x versions).

The field will return false if JAVA_VERSION is null.


IS_JAVA_1_3

public static final boolean IS_JAVA_1_3

Is true if this is Java version 1.3 (also 1.3.x versions).

The field will return false if JAVA_VERSION is null.


IS_JAVA_1_4

public static final boolean IS_JAVA_1_4

Is true if this is Java version 1.4 (also 1.4.x versions).

The field will false false if JAVA_VERSION is null.


IS_JAVA_1_5

public static final boolean IS_JAVA_1_5

Is true if this is Java version 1.5 (also 1.5.x versions).

The field will return false if JAVA_VERSION is null.


IS_OS_AIX

public static final boolean IS_OS_AIX

Is true if this is AIX.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_HP_UX

public static final boolean IS_OS_HP_UX

Is true if this is HP-UX.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_IRIX

public static final boolean IS_OS_IRIX

Is true if this is Irix.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_LINUX

public static final boolean IS_OS_LINUX

Is true if this is Linux.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_MAC

public static final boolean IS_OS_MAC

Is true if this is Mac.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_MAC_OSX

public static final boolean IS_OS_MAC_OSX

Is true if this is Mac.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_OS2

public static final boolean IS_OS_OS2

Is true if this is OS/2.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_SOLARIS

public static final boolean IS_OS_SOLARIS

Is true if this is Solaris.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_SUN_OS

public static final boolean IS_OS_SUN_OS

Is true if this is SunOS.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS

public static final boolean IS_OS_WINDOWS

Is true if this is Windows.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS_2000

public static final boolean IS_OS_WINDOWS_2000

Is true if this is Windows 2000.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS_95

public static final boolean IS_OS_WINDOWS_95

Is true if this is Windows 95.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS_98

public static final boolean IS_OS_WINDOWS_98

Is true if this is Windows 98.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS_ME

public static final boolean IS_OS_WINDOWS_ME

Is true if this is Windows ME.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS_NT

public static final boolean IS_OS_WINDOWS_NT

Is true if this is Windows NT.

The field will return false if OS_NAME is null.

Since:
2.0

IS_OS_WINDOWS_XP

public static final boolean IS_OS_WINDOWS_XP

Is true if this is Windows XP.

The field will return false if OS_NAME is null.

Since:
2.0
Constructor Detail

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 Detail

getJavaVersion

public static float getJavaVersion()
Deprecated. Use JAVA_VERSION_FLOAT instead. Method will be removed in Commons Lang 3.0.

Gets the Java version number as a float.

Example return values:

Returns:
the version, for example 1.31f for JDK 1.3.1

isJavaVersionAtLeast

public static boolean isJavaVersionAtLeast(float requiredVersion)

Is the Java version at least the requested version.

Example input:

Parameters:
requiredVersion - the required version, for example 1.31f
Returns:
true if the actual version is equal or greater than the required version

isJavaVersionAtLeast

public static boolean isJavaVersionAtLeast(int requiredVersion)

Is the Java version at least the requested version.

Example input:

Parameters:
requiredVersion - the required version, for example 131
Returns:
true if the actual version is equal or greater than the required version
Since:
2.0


Copyright © 2001-2003 - Apache Software Foundation