使用linux crontab做jar程序定时调度任务能满足大多数关于“定时调度”的需求。
相比在程序中使用定时调度任务框架,前者无论在稳定性,健壮性,可维护性,资源占用方面都有优势。
基本思想是使用crontab中调度执行某一脚本文件(x.sh),在x.sh中,使用java命令执行jar程序。
设工作目录:/home/x,方法为:
1,打包x.jar文件,放在x目录中。jar中Main入口函数接收一个字符串参数(文件目录)
2,编辑脚本文件x.sh:
<span style="font-size:14px;">#!/bin/bash
cd /home/x/
java -cp /usr/lib/jvm/java-6-openjdk-amd64/lib/tools.jar:/usr/lib/jvm/java-6-openjdk-amd64/lib/dt.jar:. -jar x.jar /home/x/libDataResource </span>
3,linux会根据/etc/crontab中配置的内容来启动相关任务(脚本),使用crotab -e来加入:
0 */1 * * * home/x/x.sh
表示一个小时执行一次x.sh脚本,即jar程序。