
Envoyé par
palestrina
Ce matin j'ai posé la question au "support technique"..de la solution et voici leur réponse:
Je ne vois pas trop comment faire cela, et je ne suis pas certain de l'efficacité du conseil..avez vous une idée?
J'ai épluché la commande:
/usr/bin/java -Djavax.net.ssl.trustStore="$PROG_HOME/jssecacerts" -Djavax.net.ssl.trustStorePassword=changeit -cp Fluid-efy.jar:lib/groovy/* com.fluid_e.FXCEngine
D'après le man java, la commande "java" invoque la classe passée en argument "com.fluid_e.FXCEngine".
1 2 3
| -cp classpath
Specifies a list of directories, JAR archives, and ZIP archives to search for class files. Class path entries are separated by colons (:). Specifying -classpath or -cp overrides any setting of the CLASS-
PATH environment variable. |
Donc la commande "java" cherche le fichier correspondant à la classe "com.fluid_e.FXCEngine" quelque part, en gros: argument de "-cp" ou bien "$CLASSPATH" ou bien ".".
Ici, tu indiques "-cp Fluid-efy.jar:lib/groovy/*". C'est donc là qu'il cherche la classe.
Les deux noms fournis (le jar "Fluid-efy.jar" et les répertoires "lib/groovy/*") sont relatifs (ils ne commencent pas par "/").
D'après ce que tu as mis dans le cron, le script "runFluid-efy.sh" se trouve dans "/opt/Fluid-efy".
Peux-tu nous dire où se trouvent le jar "Fluid-efy.jar" et le répertoire "lib"?
Tu peux les chercher par exemple avec:
1 2
| find /opt/Fluid-efy -name Fluid-efy.jar
find /opt/Fluid-efy -type d -path '*/lib/groovy' |
S'ils sont dans le dossier "/opt/Fluid-efy" contenant le script "runFluid-efy.sh", alors on peut utiliser la variable "$PROG_HOME" (sinon il faut faire autrement, en fonction de ta réponse à la question précédente...)
2 possibilités:
- comme suggéré par N_BaH, transformer la ligne java en:
/usr/bin/java -Djavax.net.ssl.trustStore="$PROG_HOME/jssecacerts" -Djavax.net.ssl.trustStorePassword=changeit -cp $PROG_HOME/Fluid-efy.jar:$PROG_HOME/lib/groovy/* com.fluid_e.FXCEngine
- comme indiqué par ton service technique, se placer dans le répertoire qui les contient, c'est-à-dire avant la ligne (n° 25) contenant l'appel de "/usr/bin/java", ajouter:
mais cette dernière proposition peut avoir des conséquences sur le comportement du script, notamment si
HTH
Partager