'java' - Java Launching Command and Options

This section describes the Java launching tool 'java' and its commonly used command options.

"java": A command line tool that launches Java applications. It starts a Java virtual machine, loads the specified class, and invokes that class's main method. "java" has the following syntax:

java [options] class [arguments]

where "options" is a list of options; "class" is the full name of a Java class to be launched; "arguments" is a list of arguments to be passed to the main method of the class to be launched.

Another way of launching a Java class is to use the "-jar" option:

java [options] -jar file [arguments]

where "file" is a JAR file, which should contain a "Main-Class" attribute in the manifest file. The "Main-Class" attribute defines the Java class to be launched.

Commonly used options are:

If you run the "java" command without any options, you will get the quick usage information as shown below:


Usage: java [-options] class [args...]
         (to execute a class)
 or  java [-options] -jar jarfile [args...]
         (to execute a jar file)
where options include:
 -d32    use a 32-bit data model if available
 -d64    use a 64-bit data model if available
 -client to select the "client" VM
 -server to select the "server" VM
         The default VM is client.

 -cp <class search path of directories and zip/jar files>
 -classpath <class search path of directories and zip/jar files>
         A ; separated list of directories, JAR archives,
         and ZIP archives to search for class files.
         set a system property
         enable verbose output
 -version print product version and exit
         require the specified version to run
 -showversion  print product version and continue
 -jre-restrict-search | -no-jre-restrict-search
         include/exclude user private JREs in the version search
 -? -help print this help message
 -X      print help on non-standard options
         enable assertions with specified granularity
         disable assertions with specified granularity
 -esa | -enablesystemassertions
         enable system assertions
 -dsa | -disablesystemassertions
         disable system assertions
         load native agent library <libname>, e.g. -agentlib:hprof
         see also, -agentlib:jdwp=help and -agentlib:hprof=help
         load native agent library by full pathname
         load Java programming language agent, see java.lang.instrument

         show splash screen with specified image

Last update: 2015.

Table of Contents

 About This Book

 Java Tools Terminology

 Installing Java 8 on Windows

 'javac' - The Java Program Compiler

'java' - The Java Program Launcher

'java' - Java Launching Command and Options

 Launching Hello.java - My First Java Program

 Option "-classpath" - Specifying Class Path

 Option '-jar' - Specifying Executable JAR Files

 Option '-X' - Specifying Non-Standard Options

 'javaw' - Launching Java Programs without Console

 'jdb' - The Java Debugger

 'jconsole' - Java Monitoring and Management Console

 'jstat' - JVM Statistics Monitoring Tool

 JVM Troubleshooting Tools

 jvisualvm (Java VisualVM) - JVM Visual Tool

 'jar' - The JAR File Tool

 'javap' - The Java Class File Disassembler

 'keytool' - Public Key Certificate Tool

 'native2ascii' - Native-to-ASCII Encoding Converter

 Outdated Tutorials


 PDF Printing Version