Crontab + ubuntu + java 不起作用



如果我直接在终端中运行波纹管代码,它就可以正常工作。

/usr/bin/java -jar /var/jboss-as-7.1.1.Final/standalone/email_linux/notification_18.jar

但是当我在 ubuntu 服务器中设置与 crontab 相同时,它不起作用。

*/3 * * * * /usr/bin/java -jar /var/jboss-as-7.1.1.Final/standalone/email_linux/notification_18.jar

有人知道为什么会出现意外行为吗?

crontab 任务在与您测试调用的用户不同的用户下执行。JBoss 依赖于许多环境变量,这些变量在该上下文中可能未定义。因此,找出该特定JAR需要从环境中获取的内容,然后将其添加到从cron任务运行的shell脚本中(而不是直接从cron运行java)。

如果要读取或写入文件,请确保在源代码中包含绝对路径,即使 jar 文件和读取文件位于同一目录中也是如此。

指定绝对路径后解决

最新更新