Titel | Inhalt | Suchen | Index | API | Go To Java 2, Zweite Auflage, Handbuch der Java-Programmierung |
<< | < | > | >> | Kapitel 49 - Hilfsprogramme des JDK |
java [ options ] classname [{ args }] javaw [ options ] classname [{ args }] |
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. Beim Aufruf beider Programme wird der Name einer Klassendatei erwartet (ohne die Erweiterung .class). Damit sie ausgeführt werden kann, muß sie eine Klassenmethode main mit folgender Signatur enthalten:
public static void main(String[] args) |
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, muß 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 13.2.2.
In der Windows-Version des JDK 1.2 ist ein Just-In-Time-Compiler (kurz JIT) enthalten, der standardmäßig aktiviert ist. Der JIT übersetzt zur Laufzeit des Programmes häufig benötigte Bytecodes in Maschinencode und beschleunigt so die weitere Ausführung des Programms. Soll der JIT deaktiviert werden, kann die Umgebungsvariable JAVA_COMPILER oder die Systemeigenschaft java.compiler auf den Wert NONE gesetzt werden. Seit dem JDK 1.3 ist der adaptive Just-In-Time-Compiler HotSpot fester Bestandteil der Auslieferung. Er kann mit der Option -Xint aus- und mit -Xmixed angeschaltet werden. Standardmäßig ist er aktiviert. |
|
Option | Bedeutung |
-classpath path | Gibt die Liste der Pfade zur Suche von Klassendateien an. Alternativ kann auch der Schalter -cp verwendet werden. |
-prof | Aktiviert in Prä-1.2-Versionen des JDK den Profiler im Interpreter, der Informationen über das Laufzeitverhalten der Anwendung in die Datei java.prof schreibt. Ab dem JDK 1.2 wird der Profiler mit der Option -Xprof bzw. -Xrunhpof aktiviert. Genaue Informationen zur Verwendung des Profilers sind in Abschnitt 48.3 zu finden. |
-version | Ausgabe der Versionsnummer. |
-help | Ausgabe eines kurzen Hilfetextes. |
-verbose | Gibt bei jedem Laden einer Klasse eine Meldung auf der Console aus. |
-verbosegc | Veranlaßt den Garbage Collector bei jedem Aufruf zur Ausgabe einer Nachricht. |
-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 1m. |
-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 16m. |
Tabelle 49.2: Optionen des Java-Interpreters
In den 1.1er Versionen des JDK gab es ein Programm jre, das dazu diente, den Interpreter des Laufzeitsystems zu starten (Java Runtime Environment). Dieses Programm ist in der aktuellen JDK-Version nicht mehr vorhanden, sondern wird durch das Programm java ersetzt. Auch der in früheren Versionen vorhandene debugging-fähige Interpreter java_g existiert seit dem JDK 1.2 nicht mehr. |
|
Titel | Inhalt | Suchen | Index | API | Go To Java 2, Zweite Auflage, Addison Wesley, Version 2.0 |
<< | < | > | >> | © 2000 Guido Krüger, http://www.gkrueger.com |