crontab中执行java程序的脚本

Posted Beef Liu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了crontab中执行java程序的脚本相关的知识,希望对你有一定的参考价值。

测试场景说明(操作系统:centos7):

有一个bash脚本,脚本内容是执行某个java程序,该脚本为 /data/project1/start.sh

crontab -e,添加了以下任务:

0   1  *  *  * /data/project1/start.sh

该配置设定了每天1点执行 /data/project1/start.sh,start.sh里最终是类似这样执行java程序:

/usr/java/jdk1.8.0_71/bin/java -classpath "/data/project1/lib/xxx.jar:/data/project1/lib/xxx.jar:.." MainClass

 

但是一直没有成功执行java程序。

经过大量查阅论坛帖子和反复尝试终于找到了解决方法。需要把crontab配置为如下:

0   1  *  *  * (cd /data/project1; nohup sh ./start.sh &)

注意:start.sh里用到的所有路径,诸如java,jar,目录等,都需要使用绝对路径

 

以上是关于crontab中执行java程序的脚本的主要内容,如果未能解决你的问题,请参考以下文章

shell定时执行脚本启动jar程序的问题

crontab计划执行脚本详解

Linux计划任务 定时任务 Crond 配置详解 crond计划任务调试 sh -x 详解 JAVA脚本环境变量定义

CentOS 中 crontab 定时任务找不到命令问题

Linux crontab定时器设置(定期执行java程序)(转)

Linux下使用Crontab定时执行脚本