【发布时间】:2016-03-19 15:12:07
【问题描述】:
从 CRON 作业运行 Java 代码时遇到问题。
我正在尝试像这样从 CRON 运行“.sh”文件:
* * * * * root sh /run-test.sh >> /var/log/cron.log
# empty line
这个 run-test.sh 有:
java HelloWorld
当,我导航到根文件夹,即“/”并运行命令:
sh run-test.sh
它将正确运行我的 HelloWorld 类并为我提供所需的输出。
但是,通过 CRON 选项卡,它总是说:
Error: Could not find or load main class HelloWorld
我无法判断这可能是什么原因。立即回复将很有帮助。谢谢
【问题讨论】:
-
请出示
run-test.sh的内容。 Cron 会清理环境,因此您需要对其进行设置(例如CLASSPATH)。另外,您是否以 root 身份运行 Java 进程?! -
run-test.sh 仅包含:java HelloWorld,是的,我以 root 身份运行它。
-
在从 IDE 构建 jar 之前,您是否创建了指定的主类??