java

 


 java(1)                                                   java(1)
 
 
 

NAME

java - Java interpreter

SYNOPSIS

java [ options ] class [ argument ... ] java [ options ] -jar file.jar [ argument ... ] PARAMETERS Options may be in any order. For a discussion of parame­ ters which apply to a specific option, see OPTIONS below. options Command-line options. See OPTIONS below. class Name of the class to be invoked. file.jar Name of the jar file to be invoked. Used only with the -jar option.

DESCRIPTION

The java utility launches a Java application. It does this by starting a Java runtime environment, loading a specified class, and invoking that class's main method. The method must have the following signature: public static void main(String args[]) The method must be declared public and static, it must not return any value, and it must accept a String array as a parameter. By default, the first non-option argument is the name of the class to be invoked. A fully-qualified class name should be used. If the -jar option is speci­ fied, the first non-option argument is the name of a JAR archive containing class and resource files for the appli­ cation, with the startup class indicated by the Main-Class manifest header. The Java runtime searches for the startup class, and other classes used, in three sets of locations: the bootstrap class path, the installed extensions, and the user class path. Non-option arguments after the class name or JAR file name are passed to the main function.

OPTIONS

The launcher has a set of standard options that are sup­ ported on the current runtime environment and will be sup­ ported in future releases. However, options below that are described as having been replaced by another one are obsolete and may be removed in a future release. An addi­ tional set of non-standard options are specific to the current virtual machine implementation and are subject to change in the future. Non-standard options begin with -X. Standard Options -client Selects the Java HotSpot Client VM. This is the default. -server Selects the Java HotSpot Server VM. -classpath classpath -cp classpath Specifies a list of directories, JAR archives, and ZIP archives to search for class files. Class path entries are separated by colons (:). Specify­ ing -classpath or -cp overrides any setting of the CLASSPATH environment variable. Used with java, the -classpath or -cp options only specify the class path for user classes. Used with oldjava, -classpath or -cp specify the class path for both user classes and boot­ strap classes. If -classpath and -cp are not used and CLASSPATH is not set, the user class path consists of the current directory (.). -debug This has been replaced by -Xdebug. -Dproperty=value Sets a system property value. -jar Executes a program encapsulated in a JAR archive. The first argument is the name of a JAR file instead of a startup class name. In order for this option to work, the manifest of the JAR file must contain a line of the form Main-Class:classname. Here, classname identifies the class having the public static void main(String[] args) method that serves as your application's starting point. See the Jar tool reference page and the Jar trail of the Java Tutorial for infor­ mation about working with Jar files and Jar-file manifests. When you use this option, the JAR file is the source of all user classes, and other user class path settings are ignored. -noclassgc This has been replaced by -Xnoclassgc. -msn This has been replaced by -Xms n. -mxn This has been replaced by -Xmx n. -ssn This has been replaced by -Xss n. -verbose -verbose:class Displays information about each class loaded. -verbosegc This has been replaced by -verbose:gc. -verbose:gc Reports on each garbage collection event. -verbose:jni Reports information about use of native methods and other Java Native Interface activity. -version Displays version information and exit. -showversion Displays version information and con­ tinues. -? -help Displays usage information and exit. -X Displays information about non-stan­ dard options and exit. Non-Standard Options -Xint Operates in interpreted-only mode. Compilation to native code is dis­ abled, and all bytecodes are executed by the interpreter. The performance benefits offered by the Java HotSpot VMs' adaptive compiler will not be present in this mode. -Xbootclasspath:bootclasspath Specifies a colon-separated list of directories, JAR archives, and ZIP archives to search for boot class files. These are used in place of the boot class files included in the Java 2 SDK and Java 2 Runtime Environment. -Xbootclasspath/a:path Specifies a colon-separated path of directories, JAR archives, and ZIP archives to append to the default bootstrap class path. -Xbootclasspath/p:path Specifies a colon-separated path of directories, JAR archives, and ZIP archives to prepend in front of the default bootstrap class path. Note: Applications that use this option for the purpose of overriding a class in rt.jar should not be deployed, as doing so would contravene the Java 2 Runtime Environment binary code license. -Xdebug Starts with the debugger enabled. -Xfuture Performs strict class-file format checks. For purposes of backwards compatibility, the default format checks performed by the Java 2 SDK's virtual machine are no stricter than the checks performed by 1.1.x versions of the JDK software. The -Xfuture flag turns on stricter class-file for­ mat checks that enforce closer confor­ mance to the class-file format speci­ fication. Developers are encouraged to use this flag when developing new code because the stricter checks will become the default in future releases of the Java application launcher. -Xnoclassgc Disables class garbage collection -Xmsn Specifies the initial size of the mem­ ory allocation pool. This value must be greater than 1000. To modify the meaning of n, append either the letter k for kilobytes or the letter m for megabytes. The default value is 2m. -Xmxn Specifies the maximum size of the mem­ ory allocation pool. This value must be greater than 1000. To modify the meaning of n, append either the letter k for kilobytes or the letter m for megabytes. The default value is 64m. -Xprof Profiles the running program, and sends profiling data to standard out­ put. This option is provided as a utility that is useful in program development and is not intended to be be used in production systems. -Xrunhprof[:help][:suboption=value,...] Enables cpu, heap, or monitor profil­ ing. This option is typically fol­ lowed by a list of comma-separated suboption=value pairs. Run the com­ mand java -Xrunhprof:help to obtain a list of suboptions and their default values. -Xssn Each Java thread has two stacks: one for Java code and one for C code. The -Xss option sets the maximum stack size that can be used by C code in a thread to n. Every thread that is spawned during the execution of the program passed to java has n as its C stack size. The default units for n are bytes and n must be > 1000 bytes. To modify the meaning of n, append either the letter k for kilobytes or the letter m for megabytes. The default stack size is determined by the Linux operating system upon which the Java platform is running. -Xrs Reduce usage of operating-system sig­ nals by Java virtual machine (JVM). Sun's JVM catches signals to implement shutdown hooks for abnormal JVM termi­ nation. The JVM uses SIGHUP, SIGINT, and SIGTERM to initiate the running of shutdown hooks. The JVM uses SIGQUIT to perform thread dumps. Applications that embed the JVM fre­ quently need to trap signals like SIG­ INT or SIGTERM, and in such cases there is the possibility of interfer­ ence between the applications' signal handlers and the JVM shutdown-hooks facility. To avoid such interference, the -Xrs option can be used to turn off the JVM shutdown-hooks feature. When -Xrs is used, the signal masks for SIGINT, SIGTERM, SIGHUP, and SIGQUIT are not changed by the JVM, and signal han­ dlers for these signals are not installed.

ENVIRONMENT VARIABLES

CLASSPATH Used to provide the system with a path to user-defined classes. Directories are separated by colons. For example: .:/home/avh/classes:/usr/local/java/classes

SEE ALSO

javac(1), jdb(1), javac(1), jar(1), set(1) See (or search java.sun.com) for the following: JDK File Structure @ http://java.sun.com/j2se/1.3/docs/tooldocs/linux/jdk­ files.html JAR Files @ http://java.sun.com/docs/books/tutorial/jar/

NOTES

All the -X options are unstable. As noted in the OPTIONS section, some of the "standard" options are obsolete. 25 November 2000 java(1)