Estou executando um script pelo cron usando o comando abaixo:
*/10 * * * * cd /nas/app/someFolder/psox; ./RunPSOX.sh >> /tmp/trial.log 2>&1
Isso está sendo executado pelo usuário root. Todos os PATH e JAVA_HOME foram definidos no nível raiz e exportados. O JDK 1.6 está sendo usado.
O script também tem o conjunto PATH dentro dele no início (já tentou o caminho absoluto e relativo), o JAVA_HOME e o CLASSPATH também. Eu adicionei o "env" e "java -version" no script antes da lógica.
O script não funciona no cron, mas funciona quando acionado manualmente. A razão é que a versão do jdk no nível do shell é jdk 1.6, mas quando o script é executado através do cron, ele está pegando a versão do jdk como 1.4 e gera um erro de Java. Eu verifiquei os arquivos de propriedades associados e não há referência ao jdk 1.4 em nenhum lugar.
Por favor avise, onde mais eu preciso verificar a versão do jdk e torná-la consistente como o jdk 1.6 para o shell e o script ao executar através do cron.