我运行crontab -e并使用以下命令: * / 5 * * * * /home/Test.war。它不起作用。 我想每5分钟执行一次Test Class的getDateTime()。
public long getDateTime() throws ParseException{
Calendar calendar = new GregorianCalendar();
calendar.setTime(new Date());
DateFormat formatter = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z");
formatter.setCalendar(calendar);
formatter.setTimeZone(TimeZone.getTimeZone("Asia/Hong_Kong"));
String newZealandTime = formatter.format(calendar.getTime());
Date d = formatter.parse(newZealandTime);
long time = (d.getTime()/1000) - 240;
return time;
}
如何集成Java路径?
答案 0 :(得分:0)
/home/Test.war
不是可执行文件,它打算部署在servlet容器或应用程序服务器中。
一个独立的Java应用程序可以编译到一个文件夹中,或者放在jar文件中,或者放在可执行的jar文件中。这些替代方案中的每一个都有一个不同的命令行来启动,其中涉及java
命令。
例如,一个可执行jar将作为java -jar <executable jar file>
被调用。
要使用cron运行它,我要做的是编写一个shell script
(即my_program.sh),并编写命令行以在文件内部启动Java程序(包括类路径参数等)。
然后授予shell script
执行权限。
最后,cron
调用了shell脚本。
每5分钟crontab表达式为:* 0/5 * ? * * *
Cron Expression Generator & Explainer - Quartz