O arquivo Java não está sendo compilado no cron

1

Eu executo um arquivo de script através do CRON diariamente, o que envolve a execução de testes de selênio e envio do relatório como e-mail. Aqui está o meu script: check.sh

#!/bin/sh
set -x
./.bashrc
export CLASSPATH=/home/test/TestAutomation/lib/*:.
cd /home/test/TestAutomation/lib/
/usr/bin/java -jar selenium-server.jar & 
cd
javac Api.java
java Api 
cd /home/test/TestAutomation/selenium/reports/
cp result.html /home/test/TestReports
sh /home/test/repgen.sh
sleep 30
sh /home/test/masRepgen.sh

Este script funciona bem no cron. Neste, sh /home/test/masRepgen.sh este script compila e executa o arquivo java e o Send Mail. Fiz uma pequena alteração no script acima, como segue.

#!/bin/sh
set -x
./.bashrc
. /home/test/blog/build.txt
cd /home/test/VT/CT/
if  [ -e /home/test/VT/CT/CT__$BuildLabel ]; then
echo "Testcases has been run already"
else
export CLASSPATH=/home/test/TestAutomation/lib/*:.
cd /home/test/TestAutomation/lib/
/usr/bin/java -jar selenium-server.jar & 
cd
javac Api.java
java Api 
cd /home/test/TestAutomation/selenium/reports/
cp result.html /home/test/TestReports
sh /home/test/repgen.sh
sleep 30
fi
sh /home/test/masRepgen.sh

Após essa alteração, não estou recebendo e-mails. ou seja, sh /home/test/masRepgen.sh não compila a classe java. Não consegui identificar onde está o erro.

masRepgen.sh contém isso.

cd /home/test/
/home/test/jdk1.7.0_12/bin/javac SendMail.java
/home/test/jdk1.7.0_12/bin/java SendMail "http://172.20.8.50/Regression/CR__$BuildLabel/compareresults_index.html" "http://172.20.8.50/Summary__$BuildLabel/complete_summary.html"

Eu adicionei isso no crontab:

45 02 * * * /bin/sh check.sh >> UI.txt
    
por Thiripu 17.11.2015 / 11:57

1 resposta

1

Colocando export CLASSPATH=/home/test/TestAutomation/lib/*:. acima se a condição resolver o problema. Obrigado a todos pelos comentários.

    
por 19.11.2015 / 08:16