wrapper.java.classpath.<n>

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

Classpath Java à utiliser. Cette série de propriétés vous permet de lister les différents éléments du classpath à utiliser lors du lancement de l'application. Elle peut contenir des fichiers jar ainsi que des répertoires contenant des fichiers de classes.

NOTE

Pour les versions du Wrapper antérieures à 3.5.55, cette liste doit contenir le fichier wrapper.jar.

Depuis la version 3.5.55, il est recommandé d'utiliser la propriété wrapper.jarfile pour indiquer le chemin vers le fichier wrapper.jar.

Composant <n> :

Chaque élément a un nom de propriété qui commence par "wrapper.java.classpath." et le composant "<n>" du nom de propriété est un nombre entier incrémenté à partir de "1". Par défaut, la numérotation doit être séquentielle, sans interruption. La propriété wrapper.ignore_sequence_gaps peut éventuellement être définie pour autoriser des interruptions dans la séquence.

Exemple :
wrapper.java.classpath.1=../lib/myapp.jar
wrapper.java.classpath.2=../lib/mysql.jar
wrapper.java.classpath.3=../classes

Si un caractère générique est utilisé dans une entrée de classpath, tous les fichiers correspondants seront ajoutés au classpath utilisé lors du lancement d'une instance JVM.

Les caractères génériques valides sont :

  • Un caractère '*', qui correspondra à "0" (zéro) ou plusieurs caractères.
  • Un caractère '?', qui correspondra à exactement un caractère.

Tri :

À partir de la version 3.3.8 du Wrapper, le Wrapper trie désormais les listes de fichiers jar correspondant à une propriété de classpath individuelle contenant des caractères génériques. Cela permet de s'assurer que le classpath exact est utilisé sur toutes les installations d'une application. Normalement, cela ne poserait pas de problème, cependant parfois un fichier de ressource ou une classe est dupliqué dans plus d'un jar. En contrôlant l'ordre des jars, il est garanti que la même version sera toujours utilisée.

Exemple :
wrapper.java.classpath.1=../lib/*.jar
wrapper.java.classpath.2=../classes

Variable d'environnement :

Si vous souhaitez inclure un classpath défini par le système dans le classpath du Wrapper, vous pouvez le faire en référençant la variable d'environnement appropriée. Le fichier wrapper.conf résultant restera compatible multiplateforme car le séparateur de chemin dans le classpath inclus sera toujours correct pour la plateforme actuelle.

Exemple (référence à une variable d'environnement) :
wrapper.java.classpath.1=%CLASSPATH%

Problèmes ?

Si vous rencontrez des problèmes liés au classpath, la première chose à faire est de vérifier le classpath complet généré par le Wrapper. Pour ce faire, activez soit la sortie des journaux de débogage avec la propriété wrapper.debug, soit l'affichage de la commande Java à l'aide de la propriété wrapper.java.command.loglevel.

NOTE

Classpath contenant des espaces :

Le Wrapper gérera correctement les éléments de classpath contenant des espaces. Cela est effectué ultérieurement par le Wrapper en entourant le classpath final généré de quotes. Les valeurs des propriétés des éléments de classpath individuels ne doivent jamais être définies avec des quotes, même si elles contiennent des espaces.

NOTE

Sous Windows, la longueur maximale possible de la ligne de commande est de 32767 caractères. Il s'agit d'une limite au niveau du système d'exploitation qui ne peut pas être contournée. Si vous êtes très proche de cette limite, vous pouvez essayer la variable wrapper.java.classpath.use_environment. Mais elle a malheureusement aussi ses propres limites sous Windows.

Référence : Chemin de classes et chemin de modules