Titel   Inhalt   Suchen   Index   DOC  Handbuch der Java-Programmierung, 7. Auflage
 <<    <     >    >>   API  Kapitel 53 - Hilfsprogramme des JDK

53.2 java - der Interpreter



53.2.1 Aufruf

java [ options ] classname [ { args } ]

java [ options ] -jar jarfile [ { args } ]

javaw [ options ] classname [ { args } ]

javaw [ options ] -jar jarfile [ { args } ]

53.2.2 Beschreibung

Der Interpreter java dient dazu, kompilierte Java-Programme auszuführen, die als Bytecode in .class-Dateien vorliegen. javaw erfüllt denselben Zweck, erzeugt aber kein Terminalfenster beim Start des Programms und erlaubt nicht die Verwendung der Standard-Streams System.in, System.out und System.err und steht z.B. unter Linux nicht zur Verfügung. Beim Aufruf beider Programme wird der Name einer Klassendatei erwartet (ohne die Erweiterung .class). Damit sie ausgeführt werden kann, muss sie eine Klassenmethode main mit folgender Signatur enthalten:

public static void main(String[] args)

Alternativ kann mit dem Parameter -jar die im Manifest definierte main-Methode einer Klasse aus dem angegebenen jar-File gestartet werden (vgl. Abschnitt 14.4.1).

Alle Argumente, die nach dem Namen der Klassendatei an java übergeben werden, stehen nach dem Aufruf von main in args zur Verfügung. Der Java-Interpreter wird nach dem Rücksprung aus main beendet, wenn keine eigenen Threads erzeugt wurden. Falls weitere Threads erzeugt wurden, wird er verlassen, nachdem der letzte Vordergrund-Thread beendet wurde.

Da während der Ausführung eines Java-Programms meist weitere Klassendateien benötigt werden, muss der Interpreter wissen, wo diese zu finden sind. Standardmäßig sucht er dabei im systemspezifischen Installationsverzeichnis und im aktuellen Verzeichnis. Die Suchstrategie kann durch Setzen der Umgebungsvariable CLASSPATH oder mit Hilfe der Option -classpath verändert werden. Sollen nur die Standardbibliotheken des JDK verwendet werden, sind weder CLASSPATH noch -classpath erforderlich. Weitere Informationen zu CLASSPATH-Einstellungen finden Sie in Abschnitt 14.2.2.

53.2.3 Optionen

Option Bedeutung
-classpath path Gibt die Liste der Pfade zur Suche von Klassendateien an. Alternativ kann auch die Abkürzung -cp angegeben werden.
-Xprof Aktiviert den hprof-Profiler im Interpreter, der Informationen über das Laufzeitverhalten der Anwendung in die Datei java.prof schreibt. Genaue Informationen zur Verwendung des Profilers sind in Abschnitt 52.3 zu finden.
-version Ausgabe der Versionsnummer
-showversion Ausgabe der Versionsnummer. Im Gegensatz zu -version wird der Interpreter fortgesetzt.
-help Ausgabe eines Hilfetextes mit Erklärung der Parameter
-verbose Gibt bei jedem Laden einer Klasse eine Meldung auf der Konsole aus. Wahlweise können die Schalter :class, gc oder jni angehängt werden. :class entspricht dabei der Voreinstellung, gc dokumentiert die Garbage-Collector-Aufrufe und jni zeigt die Verwendung von Native Methods.
-DpropName=value Weist dem Property propName den Wert value zu.
-Xms n Spezifiziert die Größe des beim Start allozierten Speichers. n ist dabei eine Ganzzahl mit einer der Erweiterungen »k« oder »m«. Die Buchstaben stehen für die Größenordnungen kilo und mega. Die Standardeinstellung ist versions- und betriebssystemabhängig, typische Werte sind 1m oder 2m.
-Xmx n Spezifiziert die Größe des maximal allozierbaren Speichers. n ist dabei eine Ganzzahl mit einer der Erweiterungen »k« oder »m«. Die Standardeinstellung ist versions- und betriebssystemabhängig, typische Werte sind 16m oder 64m.
-enableassertions Schaltet Assertions an (Abkürzung -ea). Dieser Schalter wird ausführlich in Abschnitt 7.4.1 erklärt.
-disableassertions Schaltet Assertions aus (Abkürzung -da). Dieser Schalter wird ausführlich in Abschnitt 7.4.1 erklärt.
-Xint Weist den Interpreter an, keine Hotspot-Techniken einzusetzen und stattdesssen den Bytecode zu interpretieren. In der Praxis setzt man diesen Parameter höchstens noch bei Performance-Messungen ein.
-server Aktiviert den Server-Hotspot. Der Interpreter führt weitergehende (und kostspieligere) Optimierungen aus als der Client-Hotspot und ist vorwiegend für langlaufende Serveranwendungen gedacht.
-splash imagepath Zeigt während der Initialisierung des Interpreters einen Splash-Screen mit dem angegebenen Bild.

Tabelle 53.2: Optionen des Java-Interpreters


 Titel   Inhalt   Suchen   Index   DOC  Handbuch der Java-Programmierung, 7. Auflage, Addison Wesley, Version 7.0
 <<    <     >    >>   API  © 1998, 2011 Guido Krüger & Heiko Hansen, http://www.javabuch.de