Vue d'ensemble des propriétés wrapper.java.version.*

Le Java Service Wrapper a la capacité d'afficher la version de Java spécifiée avec wrapper.java.command, et d'empêcher le démarrage de l'application si la version de Java n'est pas comprise dans une plage configurée.

NOTE

Lorsque jdb ou javaw sont utilisés comme commande Java, leur sortie ne peut pas être utilisée pour analyser des informations telles que la version ou le fournisseur de Java. Depuis la version 3.5.45, le Wrapper tente de trouver la commande 'java' dans le même répertoire (ou simplement 'java' si la commande doit être résolue via le PATH système), et l'utilise pour interroger les informations. À défaut, vous pouvez toujours utiliser la propriété wrapper.java.version.fallback pour spécifier la version manuellement.

wrapper.java.version.output

Compatibilité :3.5.17
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

L'exécution d'une application Java avec une version de Java différente de celle prévue pour le programme peut parfois entraîner des comportements inattendus ou surprenants.

Il peut donc être utile de connaître la version exacte de la JVM utilisée avant le démarrage de l'application.

Le Wrapper affichera la version exacte de la JVM si la propriété wrapper.java.version.output est définie sur TRUE.

À partir de la version 3.5.55, la valeur par défaut est basée sur la valeur de wrapper.java.query.loglevel :
 - Si wrapper.java.query.loglevel est défini sur DEBUG, wrapper.java.version.output vaut par défaut FALSE.
 - Si wrapper.java.query.loglevel est défini sur INFO ou un niveau supérieur, wrapper.java.version.output vaut par défaut TRUE.

Avant la version 3.5.55, la valeur par défaut était "FALSE".

Le Wrapper affichera également automatiquement la version de la JVM s'il s'exécute en mode débogage.

Exemple de journal :
wrapper  | Launching a JVM...
jvm 1    | java version "1.6.0_24"
jvm 1    | OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~10.04.2)
jvm 1    | OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
jvm 1    | WrapperManager: Initializing...

NOTE

À partir de la version 3.5.35, la sortie du journal utilise une source différente 'JVM ver.' (au lieu de 'JVM 1', 'JVM 2', etc.) lors de l'affichage de la version de Java. Cela permet d'éviter toute confusion avec la sortie de l'application Java.

wrapper.java.version.info.loglevel

Compatibilité :3.7.2
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

Contrôle le niveau de journalisation des informations d'exécution Java analysées par le Wrapper lors de l'exécution de 'java --version'. Cette propriété peut être utilisée indépendamment ou en combinaison avec wrapper.java.version.output.

À partir de la version 3.7.2, les détails suivants sont affichés :

  • Fournisseur
  • Version
  • Architecture
  • Modèle de données

Les niveaux de journalisation valides sont :

  • NONE pour ne jamais journaliser,
  • FATAL pour journaliser au niveau FATAL,
  • ERROR pour journaliser au niveau ERROR,
  • WARN pour journaliser au niveau WARN,
  • STATUS pour journaliser au niveau STATUS,
  • INFO pour journaliser au niveau INFO,
  • DEBUG pour journaliser au niveau DEBUG.

La valeur par défaut est "DEBUG". Cela signifie que ces détails ne s'afficheront que lorsque le niveau de journalisation du Wrapper est défini sur "DEBUG".

Exemple : (Configuration)
wrapper.java.version.info.loglevel=STATUS

Exemple : (Sortie)
STATUS | wrapper  | Java Runtime Info:
STATUS | wrapper  |   Vendor       : Eclipse Adoptium
STATUS | wrapper  |   Version      : 25.0.4
STATUS | wrapper  |   Architecture : amd64
STATUS | wrapper  |   Data Model   : 64-Bit
STATUS | wrapper  |

wrapper.java.version.timeout

Compatibilité :3.5.27
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

Nombre de secondes pendant lesquelles le Wrapper attendra l'affichage de la version de Java. Si ce délai est dépassé, le Wrapper tuera le processus enfant et résoudra la version de Java à la valeur minimale prise en charge.

Pour la plupart des utilisateurs, ce délai ne sera jamais atteint car l'affichage de la version de la JVM est rapide. Cependant, il peut arriver sur des machines lentes que la JVM mette beaucoup de temps à démarrer. Si le délai atteint le timeout, le processus enfant est tué et la version de la JVM ne sera pas affichée.

La valeur par défaut est 30 secondes. Si vous définissez la valeur à 0, le Wrapper attendra indéfiniment la fin du processus enfant.

Trop de temps pour afficher la version de la JVM :
wrapper  | Launching a JVM...
wrapper  | Child process: Java version: timed out
jvm 1    | WrapperManager: Initializing...

wrapper.java.version.fallback

Compatibilité :3.5.38
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

Cette propriété est utilisée si le Wrapper ne parvient pas à analyser la sortie de 'java -version'.

Si elle n'est pas définie, la version de Java sera résolue à la version minimale prise en charge, mais le Wrapper s'arrêtera lorsque les propriétés suivantes sont utilisées :

Lorsque wrapper.java.version.fallback est utilisé, toutes les propriétés ci-dessus peuvent être utilisées même si la sortie de 'java -version' ne peut pas être analysée.

Valeur par défaut Java 1.8 si la version de Java n'a pas pu être analysée :
wrapper.java.version.fallback=1.8

wrapper.java.version.min

Compatibilité :3.5.35
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

Spécifie la version minimale de Java pour laquelle le Wrapper est autorisé à lancer l'application Java.

La valeur par défaut est '1.4', qui est la plus ancienne version de JVM prise en charge par le Wrapper. Toute valeur inférieure est invalide et entraînera l'arrêt du Wrapper.

La valeur peut être au format '1.major[.minor[_revision]]' ou 'major[.minor[.revision]]', quelle que soit la version de Java. Cela permet de prendre en charge les deux schémas de numérotation renvoyés par 'java -version' : avant Java 9, le premier format était utilisé, tandis que Java 9 et versions ultérieures utilisent le second format.

Les crochets indiquent que les composants mineur et de révision sont facultatifs. Laisser l'un ou les deux non spécifiés signifie que ces espaces réservés accepteront n'importe quel nombre.

Java 1.7 ou supérieur est autorisé :
wrapper.java.version.min=1.7
Java 8.0.40 ou supérieur est autorisé :
wrapper.java.version.min=8.0.40

AVERTISSEMENT

wrapper.java.version.max

Compatibilité :3.5.35
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

Spécifie la version maximale de Java pour laquelle le Wrapper est autorisé à lancer l'application Java.

La valeur par défaut est 'UNLIMITED', ce qui permet au Wrapper de démarrer l'application Java avec les dernières versions de Java. En principe, cela devrait fonctionner grâce à la rétrocompatibilité assurée entre les versions de Java. Cependant, la pratique est parfois différente, et il est conseillé d'utiliser une version du Wrapper publiée après (ou proche de) la date de sortie de Java, car la compatibilité peut alors être testée et confirmée.

La valeur peut être au format '1.major[.minor[_revision]]' ou 'major[.minor[.revision]]', quelle que soit la version de Java. Cela permet de prendre en charge les deux schémas de numérotation renvoyés par 'java -version' : avant Java 9, le premier format était utilisé, tandis que Java 9 et versions ultérieures utilisent le second format.

Les crochets indiquent que les composants mineur et de révision sont facultatifs. Laisser l'un ou les deux non spécifiés signifie que ces espaces réservés accepteront n'importe quel nombre.

Java 9.0.1 et inférieur sont autorisés :
wrapper.java.version.max=9.0.1
Toutes les révisions et versions mineures de Java 9, ainsi que les versions inférieures, sont autorisées :
wrapper.java.version.max=9

AVERTISSEMENT