linux定时执行java程序

业务要求:每天凌晨3点30从某业务平台FTP下载文件

步骤:

1.完成业务功能代码后打成jar包,如 downFile.jar。在打downFile.jar时无需将依赖的jar包括进去。将dowFile.jar和它所依赖的jar包如commons-net-3.1.jar拷到linux的相应目录,如/home/tomcat/down_file下。

2.在/home/tomcat/down_file下创建shell脚本downfiletask.sh。使用chmod +x downfiletask.sh,为文件授予可执行权限。shell脚本内容如下:

#!/bin/sh
export HOME="/home/tomcat/down_file"
export JAVA_HOME="/opt/jdk1.6.0_27"
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH=$CLASSPATH:$HOME/commons-net-3.0.1.jar:$HOME/downFile.jar:.
echo $CLASSPATH
cd $HOME
$JAVA_HOME/bin/java -cp $CLASSPATH -Dfile.encoding=GBK com.cattsoft.data.DownFile

提示:cd $HOME 不加上也可以执行,但是在定时执行和直接执行可能会因为当前路径不一致,引起一些差异。我开始不知道就没有写,后来发现程序在定时执行时获取配置文件的路径就和直接执行时获取到的路径不一样,导致程序出错。

3.在/home/tomcat/down_file下创建定时任务文件tomcatcron。文件内容如下:

30 3 * * * nohup /home/tomcat/down_file/downfiletask.sh>/dev/null 2>&1 &

4.在命令行输入 crontab tomcatcron,向系统提交定时任务。提交后可以通过crontab -l进行查看,crontab -r进行删除。如果提交不成功,可以考虑crontab用户权限问题。



Linux环境下,定期重启Java应用通常通过cron作业(cron job)来实现,这是一个定时任务管理系统。以下是设置cron任务的基本步骤: 1. **打开cron表编辑器**:首先,你需要通过`crontab -e`命令打开cron配置文件,这将启动一个文本编辑器(默认是vi或vim)。 2. **添加一个新的定时任务**:在打开的编辑器中,你会看到一系列以`*`表示的时间字段,按照时间顺序排列:分钟、小时、日期、月份和星期。每个字段都可以设定范围。例如,要每小时重启一次应用,你可以添加类似下面的行: ``` * * * * * /usr/bin/java -jar /path/to/your/app.jar & > /dev/null 2>&1 ``` 这一行的意思是,在每一分钟的开始(*)执行指定的命令。`/usr/bin/java`指定了Java解释器的位置,`-jar`用于执行JAR包中的应用,`&> /dev/null 2>&1`确保日志信息会被忽略并重定向到/dev/null。 3. **保存并退出编辑器**:完成后,记得保存并关闭编辑器。 4. **测试和查看计划的任务**:使用`crontab -l`命令查看当前的cron任务列表,确认已经添加的重启命令是否正确。 5. **启用cron服务**:如果你之前禁用了cron服务,现在需要启用它,可以通过`sudo service cron start`来启动。 6. **验证任务**:检查应用程序的日志,或者简单地观察其状态,确认定时任务是否按预期工作。 注意:你需要确保你的Java应用能够在命令行下启动,并且`cron`用户有足够的权限访问应用程序和相关资源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值