Java on the Command Line

You can run Java programs from the command line through the java command. Generally, you invoke it in one of two ways:

java options class argument1 argument2...

Loads the specified class and runs its main method. If it has no such method, or if it’s of the wrong format,[13] then the class will fail to launch.

You should have a class path defined so that the Java interpreter will know where on the filesystem to search for the specified class. See Section 10.4.1.

java options -jar jarfile arguments

In this case, the -jar option tells the Java interpreter to launch a program encapsulated in a Jar (Java Archive) file.[14] This works only if the Jar file knows its own Main-class, which defines the main method.

Jar files, like Mac OS X applications, are self-contained and ignore the user’s class path definitions.

Tip

This section involves using the Terminal. If you are completely unfamiliar with this application, or with using a Unix command line in general, you may want to skip ahead to Chapter 19 first.

You can find a full list of Java’s options under its manpage, but here are some of the more useful ones:

-cp

Lets you define the class path for one command invocation. See Section 10.4.1.

-Dproperty=value

Sets a system property value.

-verbose

Displays information about each loaded class.

Tip

If the Java program you wish to run from the command line happens to be a self-contained Mac OS X application (of the sort described earlier in Section 10.2), then ...

Get Mac OS X in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.