B.4 | java |
java heißt der Kommmandozeileninterpreter. Er interpretiert Java-Applikationen. Durch Aufruf vonjava <programmname>wird eine Applikation gestartet. Der Programmname, der java übergeben wird, entspricht dem Namen der Hauptklasse ohne die Endung .class. Diese Hauptklasse muss die Methode main() definieren. Seit dem JDK 1.2werden die Optionen von java eingeteilt in Standard-Optionen und Nicht-Standard-Optionen. Während die Standard-Optionen als gefestigt betrachtet werden können und auch in künftigen Versionen verfügbar sind, unterliegen die Nicht-Standard-Optionen möglicherweise noch Änderungen.
java besitzt folgende Standard-Optionen:Die Nicht-Standard-Optionen von java beginnen alle mit einem X. Im Folgenden werden diejenigen X-Optionen beschrieben, die sowohl unter Solaris als auch unter Linux und Windows verfügbar sind.
- -classpath <path>
-cp <path>
gibt den Pfad an, in dem der Interpreter nach Klassen sucht. Diese Option setzt die CLASSPATH-Umgebungsvariable außer Kraft. Mehrere Pfade müssen durch ; (Windows) bzw. : (UNIX) getrennt werden.- -D<propertyName>=<value>
Mit dieser Option kann dem Interpreter eine Property über die Kommandozeile übergeben werden.- -enableassertions[:<package>]
-ea[:<package>]
Aktiviert Zusicherungen in den spezifizierten Paketen oder Klassen. Wird <package> nicht angegeben, werden Zusicherungen global aktiviert. Hinter der Option können jeweils durch : getrennt mehrere Paket- oder Klassennamen spezifiziert werden, auf die sich die Option beziehen soll. Damit sich die Option auch auf alle Unterpakete eines Pakets auswirkt, kann dem Paketnamen die Zeichenkette ... angehängt werden. Wird nur ... ohne vorangestelltes Paket angegeben, gilt die Option für das Standardpaket (d.h. das aktuelle Verzeichnis).- -disableassertions[:<package>]
-da[:<package>]
Deaktiviert Zusicherungen in den spezifizierten Paketen oder Klassen. Wird <package> nicht angegeben, werden Zusicherungen global deaktiviert. Hinter der Option können jeweils durch : getrennt mehrere Paket- oder Klassennamen spezifiziert werden, auf die sich die Option beziehen soll. Damit sich die Option auch auf alle Unterpakete eines Pakets auswirkt, kann dem Paketnamen die Zeichenkette ... angehängt werden. Wird nur ... ohne vorangestelltes Paket angegeben, gilt die Option für das Standardpaket (d.h. das aktuelle Verzeichnis).Wenn die Optionen -ea- und -da gleichzeitig angegeben werden, wird die Reihenfolge berücksichtigt, d.h. mit
java -ea -da:de.demo.Testwerden Zusicherungen zunächst global aktiviert und dann für de.demo.Test abgeschaltet. Auf diese Weise können Ausnahmen spezifiziert werden.- -enablesystemassertions
-esa
Aktiviert Zusicherungen in den Klassen der Standardbibliothek.- -disablesystemassertions
-dsa
Deaktiviert Zusicherungen in den Klassen der Standardbibliothek.- -hotspot
Führt den Interpreter mit der HotSpot-Client-VM aus (Voreinstellung).- -jar
Bei Angabe dieser Option wird die Startklasse in einer JAR-Datei gesucht, die direkt nach den Optionen per Kommandozeile angegeben wird. Die Start-Klasse wird durch den Manifest-Eintrag Main-Class in der JAR-Datei angegeben.- -server
Führt den Interpreter mit der HotSpot-Server-VM aus.- -verbose
-verbose:class
Bewirkt, dass jedesmal eine Meldung ausgegeben wird, wenn eine Klasse geladen wird.- -verbose:gc
Bewirkt, dass jedesmal eine Meldung ausgegeben wird, wenn der Garbage Collector aktiv wird.- -verbose:jni
Bewirkt, dass jedesmal eine Meldung ausgegeben wird, wenn die Java Native-Schnittstelle benutzt wird.- -version
Zeigt die Version an und beendet das Programm.- -showversion
Zeigt die Version an und setzt die Ausführung fort.- -?
-help
Gibt eine Beschreibung der Standard-Optionen aus.- -X
Gibt eine Beschreibung der Nicht-Standard-Optionen aus.
- -Xint
Schaltet den Just-In-Time-Compiler sowie die HotSpot-Optimierungen ab und führt das Programm ausschließlich interpretiert aus.- -Xbootclasspath:<bootclasspath>
Mit dieser Option kann der Pfad geändert werden, unter dem die System-Klassen gesucht werden. Mehrere Pfade müssen durch ; (Windows) bzw. : (UNIX) getrennt werden.- -Xbootclasspath/a:<bootclasspath>
Hängt die angegebenen Verzeichnisse und Archive an den Pfad für Systemklassen an.- -Xbootclasspath/p:<bootclasspath>
Stellt die angegebenen Verzeichnisse und Archive dem Pfad für Systemklassen voran.- -Xdebug
Diese Option gestattet es, das sich jdb nach dem Start des Programms zur Untersuchung einklinken kann. Zusätzlich muss hierzu -Xrunjdwp angegeben werden.- -Xfuture
Führt striktere Formatkontrollen bei den zu ladenden Bytecode-Dateien als ältere Versionen der Virtual Machine durch.- -Xincgc
Aktiviert die inkrementelle Garbage Collection. Ressourcen werden dadurch gegebenenfalls früher freigegeben. Es können aber Auswirkungen auf die Performance entstehen.- -Xloggc:<file>
Diese Option hat die gleiche Wirkung wie -verbose:gc, nur dass die Protokollierung hier in die Datei <file> erfolgt.- -Xnoclassgc
Durch diese Option werden Klassen nicht mehr vom Garbage-Collector erfasst (sondern nur noch Objekte).- -Xmx<x>
Mit dieser Option kann der maximal belegbare Speicherplatz festgelegt werden. x kann in Bytes (z. B. -Xmx1400000), in Kilobytes (z. B. -mx1400k) oder in Megabytes (z. B. -mx1m) angegeben werden. Die Einheit der angegebenen Zahl kann also durch anhängen eines k (für Kilobyte) oder eines m (für Megabyte) geändert werden. Byte ist die voreingestellte Einheit. Ohne Angabe der Option ist der maximale Speicherplatz 64 Megabyte. Die Mindestgröße muss 1000 Bytes betragen.- -Xms<x>
Mit dieser Option wird der beim Start angelegte Speicherplatz angegeben. <x> wird wie bei der Option -Xmx angegeben. Ohne Angabe der Option ist der angelegte Speicherplatz 1000 Bytes. Die Mindestgröße muss ebenfalls 1000 Bytes betragen.- -Xprof
Führt ein Profiling der ausgeführten Applikation aus und listet die Ergebnisse auf der Standardausgabe.- -Xrunhprof:help
-Xrunhprof:<suboption>=<value>
Diese Option ermöglicht Profiling von CPU, Heap und Monitoren. Bei Angabe von :help werden die verfügbaren Optionen aufgelistet. Diese Optionen können in der zweiten Form als Schlüssel-Wert-Paare gesetzt werden. Durch Kommas getrennt können auch mehrere Schlüssel-Wert-Paare angegeben werden.- -Xrunjdwp
Muss mit -Xdebug angegeben werden, um Informationen an interne Bibliotheken zu übergeben.- -Xrs
Mit dieser Option wird die Verwendung von Systemsignalen reduziert.- -Xcheck:jni
Mit dieser Option werden Native-Methoden zusätzlichen Überprüfungen unterzogen. Im Einzelnen werden an die native Implementierung übergebene Parameter sowie Daten der Laufzeitumgebung geprüft.