List of Java system properties
Java™ system properties determine the environment in which the Java programs run. They are like system values or environment variables in IBM® i.
For more information about Java system properties, see JSSE for 1.4 Java system properties, JSSE for 1.5 Java system properties, and JSSE for 6 Java system properties.
| Java property | Default value![]() |
|---|---|
| file.encoding | Defaults based on default language ID and country
ID of the job.Maps the coded character set identifier (CCSID) to the corresponding ISO ASCII CCSID. Also, sets the file.encoding value to the Java value that represents the ISO ASCII CCSID. The file.encoding value must be specified on JVM startup, and should not be changed at runtime. See File.encoding values and IBM i CCSID for a description of how the default is chosen, and a table that shows the relationship between possible file.encoding values and the closest matching CCSID.![]() |
| i5os.crypto.device | Specifies the cryptographic device to use. If this property is not set, the default device CRP01 is used. |
| i5os.crypto.keystore | Specifies the CCA keystore file to use. If this property is not set, the keystore file named in the cryptographic device description is used. |
| java.compiler | IBM Technology for Java compiler level. This property is used
for output only.![]() |
| java.ext.dirs | J2SE 1.4 64bit:
![]() |
| java.home | ![]()
This property is used for output only. See Support for multiple Java Development Kits (JDKs) for details. |
| java.library.path | This property is used for locating native method
libraries for the application as well as internal JVM native libraries.
The default value is obtained from the concatenation of two lists:
the IBM i library
list and the paths specified for the LIBPATH environment variable.
For more information, see Managing native method libraries.![]() |
| java.net.preferIPv4Stack |
On dual stack machines, system properties are provided for setting the preferred protocol stack (IPv4 or IPv6) as well as the preferred address family types (inet4 or inet6). IPv6 stack is preferred by default, because on a dual-stack machine IPv6 socket can talk to both IPv4 and IPv6 peers. This setting can be changed with this property. For more information, see the Networking IPv6 User Guide. |
| java.net.preferIPv6Addresses |
Even though IPv6 is available on the operating system, the default preference is to prefer an IPv4-mapped address over an IPv6 address. This property controls whether IPv6 (true) or IPv4 (false) addresses are used. For more information, see the Networking IPv6 User Guide. |
| java.use.policy | true |
| java.vendor | IBM Corporation |
| java.vendor.url | http://www.ibm.com |
| java.vm.name | IBM J9 VM![]() |
| java.vm.specification.name | Java Virtual Machine Specification |
| java.vm.specification.vendor | Sun Microsystems, Inc. |
| java.vm.specification.version | 1.0 |
| java.vm.vendor | IBM Corporation |
| java.vm.version | ![]()
|
| os.arch | PowerPC® |
| os.name | OS/400® |
| os.version | V7R1M0 (default value) Obtains the IBM i release level from the Retrieve Product Information application programming interface (API). |
| os400.certificateContainer | Directs Java secure sockets layer (SSL) support to use the specified certificate container for the Java program that was started and the property that was specified. If you specify the os400.secureApplication system property, this system property is ignored. For example, enter -Dos400.certificateContainer=/home/username/mykeyfile.kdb or any other keyfile in the integrated file system. |
| os400.certificateLabel | You can specify this system property in conjunction with the os400.certificateContainer system property. This property lets you select which certificate in the specified container you want secure sockets layer (SSL) to use. For example, enter -Dos400.certificateLabel=myCert, where myCert is the label name that you assign to the certificate through the Digital Certificate Manager (DCM) when you create or import the certificate. |
| os400.child.stdio.convert | Controls the data conversion for stdin, stdout, and stderr in Java. Data conversion between ASCII data and Extended Binary Coded Decimal Interchange Code (EBCDIC) data occurs by default in the Java virtual machine. Using this property to turn on and turn off these conversions only affects child processes that this process starts by using the Runtime.exec() in which the command being run is a command based on Java. This property value becomes the default value for os400.stdio.convert in the child processes. See Values for os400.stdio.convert and os400.child.stdio.convert system properties. |
| os400.display.properties | If this value is set to 'true', then all of the Java Virtual Machine properties are printed to standard out. No other values are recognized. |
| os400.file.create.auth, os400.dir.create.auth | These properties specify authorities assigned to files and directories. Specifying the properties without any values or with unsupported values results in a public authority of *NONE. You can specify os400.file.create.auth=RWX or os400.dir.create.auth=RWX, where R=read, W=write, and X=execute. Any combination of these authorities is valid. |
| os400.job.file.encoding | This property is used for output only. It lists the character encoding equivalent to the job CCSID of the IBM i job the JVM is running in. |
| os400.secureApplication | Associates the Java program that starts when using this system property (os400.secureApplication) with the registered secure application name. You can view registered secure application names by using the Digital Certificate Manager (DCM). |
| os400.security.properties | Allows full control over which java.security file you use. When you specify this property, the J2SE does not use any other java.security files, including the J2SE specific java.security default. |
| os400.stderr | Allows mapping stderr to a file or socket. See os400.stdin, os400.stdout, and os400.stderr system property values. |
| os400.stdin | Allows mapping stdin to a file or socket. See os400.stdin, os400.stdout, and os400.stderr system property values. |
| os400.stdin.allowed | Specifies whether stdin is allowed (1) or not allowed (0). The default value is 1 for interactive jobs and 0 for a batch jobs. |
| os400.stdio.convert | Allows control of the data conversion for stdin, stdout, and stderr in Java. Data conversion occurs by default in the Java virtual machine to convert ASCII data to or from EBCDIC. You can turn these conversions on or off with this property, which affects the current Java program. See Values for os400.stdio.convert and os400.child.stdio.convert system properties. For Java programs started using the Runtime.exec() method, see os400.child.stdio.convert. |
| os400.stdout | Allows mapping stdout to a file or socket. See default values. |
| os400.xrun.option | This property can be used in place of the -Xrun option on the java command to run an agent program during JVM startup. |
| os400.vm.inputargs | This property is used for output only. It will display the arguments that the JVM received as inputs. This property can be useful for debugging what was specified on JVM startup. |
| user.timezone |
|
Default value