[CENTOS] Lacer un cron incluant cmd java

Résolu/Fermé
ixtobilly Messages postés 44 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 20 février 2009 - 5 juil. 2007 à 13:27
ixtobilly Messages postés 44 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 20 février 2009 - 6 juil. 2007 à 11:39
Bonjour les amis !

J'ai un petit problème avec le crontab. En effet, j'ai une application java qui marche très bien tant que je la lance en ligne de commande. Or, elle devrait être lancée automatiquement chaque jour. . J'ai créé pour cela un fichier exécutable "lecron.sh" dt je donne le code. Je me met dans le répertoire le contenant et je le lance en faisant : ./lecron.sh

Tout se passe bien et mon prog s'exécute correctement.

Je décide alors de mettre cette commande dans le cron. Je fais crontab -e et je renseigne les champs comme suis:

37 10 * * * /usr/share/uniclient/batch/cron.txt > /usr/share/uniclient/archive/trac_cron.txt


ou encore

37 10 * * * (/usr/share/uniclient/batch/cron.txt > /usr/share/uniclient/archive/trac_cron.txt);


A l'heure prévue, il crée le fichier "/usr/share/uniclient/archive/trac_cron.txt" mais il est vide alors kil y a des messages ki devaient s'afficher, dc être dirigés vers mon fichier. Il ne fait aucune action de ma classe java. (En bref, il n'exécute pas mon programme)


Afin d'eviter les kestions de permission, tt le rep est mis à 777.

lecron.sh :

LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/Persobilbio.jar
LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/ifxjdbc.jar
LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/ifxjdbcx.jar
LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/ifxlang.jar
LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/ifxlsupp.jar
LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/ifxsqlj.jar
LACLASSPATH=$LACLASSPATH:/usr/local/jakarta-tomcat/common/lib/ifxtools.jar
LACLASSPATH=$LACLASSPATH:/usr/share/uniclient/batch


FICPROPRIETE=/usr/share/uniclient/lib/propriete.txt


java -cp $LACLASSPATH Rech_client $FICPROPRIETE


Quelqu'un aurait il une information à me donner ? Ais je oublié quelque chose ?

Merci de me répondre, le moindre indice me serait d'un grand secours.

A voir également:

2 réponses

nuxora Messages postés 2 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 5 juillet 2007 7
5 juil. 2007 à 23:25
Au moment de l'execution du cron, l'executable java n'est peut etre pas dans le path

lance la commande suivante:
which java
qui donnera p-e comme resultat: /usr/bin/java ou le repertoire specifique ou tu l'as installé

et dans ton script utilise des chemins absolus.
Dans tous les cas, ton script à défaut de ne rien faire devrait au moins retourner une erreur.

Nuxora.
---------------------------------------------
please visit http://www.nuxora.com
3
ixtobilly Messages postés 44 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 20 février 2009 4
6 juil. 2007 à 11:39
En effet, j'ai inclu le chemin absolu vers la commande java et tout semble marcher correctement. Voici la mofication que j'ai apporté:

COMMANDE=/usr/java/jdk1.6.0_01/bin/java
et ensuite:
$COMMANDE -cp $LACLASSPATH Rech_client $FICPROPRIETE

Merci Nuxora ! A bienôt
1