_JAVA_OPTIONS Umgebungsvariable in Java
- Arten von Java-Optionen
-
_JAVA_OPTIONS
Umgebungsvariable in Java -
JAVA_TOOL_OPTIONS
Umgebungsvariable in Java -
Unterschied zwischen
JAVA_TOOL_OPTIONS
undJDK_JAVA_OPTIONS
in Java - Fazit
_JAVA_OPTIONS
ist eine Umgebungsvariable, mit der Sie die Java-Optionen an einen JVM-Prozess übergeben können. Die übergebenen Java-Optionen werden von der Java Virtual Machine ähnlich behandelt wie die Kommandozeilenargumente.
In diesem Artikel werden wir verschiedene Arten von Java-Optionen verstehen. Wir werden auch die _JAVA_OPTIONS
und die JAVA_TOOL_OPTIONS
sehen, den Unterschied zwischen den Umgebungsvariablen JDK_JAVA_OPTIONS
und JAVA_TOOL_OPTIONS
.
Arten von Java-Optionen
Java definiert drei verschiedene Arten von Optionen. Java unterscheidet zwischen Optionen basierend auf ihrer Unterstützung in verschiedenen Java-Versionen und ihrer Verwendung.
Lassen Sie uns die Kategorien jeder dieser Optionen verstehen.
- Standardoptionen - Java garantiert, dass alle Java-Versionen Standardoptionen unterstützen. Java ermöglicht die Verwendung dieser Optionen für allgemeine Aktionen wie:
- Setzen der Variable
classpath
. - Überprüfen der Version von Java Runtime Environment (JRE).
- Umschalten der ausführlichen Ausgabe usw.
- Setzen der Variable
- Zusätzliche Optionen - Java garantiert nicht die Unterstützung dieser Arten von Optionen in allen Versionen. Diese Optionen beziehen sich speziell auf die JavaHotSpot Virtual Machine und können sich ändern.
Java verwendet diese Optionen, um bestimmte Variablen festzulegen. - Erweiterte Optionen – Java bietet erweiterte Optionen für Entwickler. Entwickler können diese Optionen verwenden, um JVM, JRE, JIT und Garbage Collector zu optimieren.
Es gibt vier verschiedene Arten von erweiterten Optionen. Diese werden wie folgt angegeben.
- Laufzeitoptionen – Entwickler können diese Optionen verwenden, um die Laufzeit von JVM zu optimieren.
- JIT-Compiler-Optionen – Entwickler können diese Optionen verwenden, um den Just-In-Time-(JIT)-Java-Compiler zu steuern.
- Wartungsoptionen – Java definiert diese Optionen zum Debuggen und Sammeln von Systeminformationen.
- Garbage-Collection-Optionen – Entwickler können den Garbage-Collection-Mechanismus von Java mit diesen Optionen steuern.
_JAVA_OPTIONS
Umgebungsvariable in Java
Java definiert mehrere Umgebungsvariablen, um die Java-Optionen während der Ausführung eines Prozesses an die JVM zu übergeben. Die _JAVA_OPTIONS
ist eine solche Umgebungsvariable.
Java behandelt die Argumente, die Sie mit dieser Umgebungsvariablen übergeben, ähnlich wie die Befehlszeilenargumente.
Gemäß der Dokumentation von Java by Oracle stellt Java diese Optionen bereit, damit Befehlszeilenargumente an Programme in solchen Ausführungsumgebungen übergeben werden können, in denen keine direkte Befehlszeile verfügbar ist.
Sie können mehrere Argumente übergeben, wobei jedes Argument durch Leerzeichen getrennt ist. Wenn Ihr Argument Leerzeichen enthält, sollten Sie es in Anführungszeichen setzen.
Sie sollten bei der Verwendung von _JAVA_OPTIONS
vorsichtig sein, da die Ausführung des Programms fehlschlägt, wenn die Argumente ungültig sind.
Sehen wir uns ein Beispiel für die Übergabe der Option der Variablen an, um die Protokollverfolgung zu aktivieren.
export _JAVA_OPTIONS = '-Dsun.java2d.trace=log'
JAVA_TOOL_OPTIONS
Umgebungsvariable in Java
Die JAVA_TOOL_OPTIONS
ist der Nachfolger der _JAVA_OPTIONS
. Die Umgebungsvariable _JAVA_OPTIONS
ist in der JVM-Spezifikation nicht standardisiert. Daher haben verschiedene Anbieter ihre Namen für diese Variable.
Die Variable JAVA_TOOL_OPTIONS
ist jedoch in der JVM-Spezifikation standardisiert. Sie sollten es immer den _JAVA_OPTIONS
vorziehen.
Dies liegt daran, dass es die Probleme mit Leerzeichen und Zitaten besser handhabt.
Unterschied zwischen JAVA_TOOL_OPTIONS
und JDK_JAVA_OPTIONS
in Java
Die JAVA_TOOL_OPTIONS
und die JDK_JAVA_OPTIONS
sind sehr ähnlich, da Java die Verwendung beider Umgebungsvariablen ermöglicht, um die Java-Optionen an JVM zu übergeben.
Wie wir bereits gesehen haben, gelten alle Regeln und Methoden zum Übergeben von Argumenten mit JAVA_TOOL_OPTIONS
auch für JDK_JAVA_OPTIONS
.
Der Hauptunterschied zwischen diesen Variablen ist jedoch unten angegeben.
- Java Launcher liest die übergebenen Argumente mit
JDK_JAVA_OPTIONS
. Daher können wir keine Optionen übergeben, die dazu führen, dass der Launcher beendet wird, und JAR oder die Hauptklasse angeben.
Daher können wir diese Variable verwenden, um während der Laufzeit verwendete Optionen auf Launcher-Ebene zu übergeben.
- Der Java-Compiler und JAR lesen auch die
JAVA_TOOL_OPTIONS
. Daher können wir diese Variable verwenden, um Optionen zum Optimieren der Ausführung festzulegen.
Mit dieser Variable können wir zum Beispiel Flags setzen.
Fazit
In diesem Artikel wurden die Java-Umgebungsvariablen JAVA_TOOL_OPTIONS
, JDK_JAVA_OPTIONS
und _JAVA_OPTIONS
besprochen. Wir haben auch die Unterschiede zwischen der Verwendung dieser Umgebungsvariablen diskutiert.