Dans le domaine de la configuration de la machine virtuelle Java (JVM), trois variables d'environnement servent des objectifs distincts : _JAVA_OPTIONS, JAVA_TOOL_OPTIONS, et JAVA_OPTS. Bien que JAVA_OPTS soit externe à la JVM, les deux autres offrent une alternative aux paramètres de ligne de commande pour spécifier les arguments JVM.
_JAVA_OPTIONS et JAVA_TOOL_OPTIONS permettent de définir des arguments JVM via variables d'environnement. Cependant, ils diffèrent par leur priorité et leur portée. _JAVA_OPTIONS a la priorité la plus élevée, écrasant tous les paramètres spécifiés dans JAVA_TOOL_OPTIONS ou les paramètres de ligne de commande. En revanche, JAVA_TOOL_OPTIONS a la priorité la plus basse, étant remplacé à la fois par _JAVA_OPTIONS et par les arguments de ligne de commande.
JAVA_TOOL_OPTIONS et _JAVA_OPTIONS sont utilisés par plusieurs exécutables au sein de l'écosystème Java. En plus de Java et javac, ils sont également repris par Javadoc, jar et Java Native Interface (JNI).
Bien qu'il n'y ait aucune restriction explicite sur les arguments qui peuvent être inclus dans JAVA_TOOL_OPTIONS et _JAVA_OPTIONS, des paramètres incorrects ou contradictoires peuvent entraîner un comportement inattendu. Il est conseillé de prioriser l'utilisation des paramètres de ligne de commande, en réservant ces variables d'environnement aux scénarios où la modification de la ligne de commande est peu pratique, voire impossible.
Il est important de noter que _JAVA_OPTIONS est sans papiers et son utilisation n’est pas recommandée. Il n'y a aucune garantie que les futures implémentations JVM prendront en charge cette variable. De plus, n'oubliez pas que l'ordre de priorité est _JAVA_OPTIONS > arguments de ligne de commande > JAVA_TOOL_OPTIONS.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!