【发布时间】:2016-12-01 08:01:54
【问题描述】:
我正在运行一个 AWS EC2 Linux 实例,我在该实例上上传了一个我编写的软件的 .jar 文件。 为了定期触发应用程序,我想使用 cron - 并按以下方式设置 crontab:
23 12 * * * java -jar /home/ec2-user/Cube-Core/Cube.jar > /home/ec2-user/CubeCore/CronLogfiles/test.log 2>&1
路径都匹配,我将软件中的 sysout 和 syserr 重定向到一个测试日志文件。
但是:当 cron 完成这项工作时,他会在 jar 本身中触发什么?他是否正在寻找一个名为“main”的课程(这只是我的假设,因为我是 cron 新手)。如果是这种情况,我如何明确告诉他要触发哪个类,因为我的项目的主类的调用方式不同?
另外,我只看到有些人喜欢使用 cron 触发 bash 脚本,并让脚本本身触发 .jar 执行。另一方面,我直接告诉 crontab 执行 .jar。这两种方式中哪一种是“最干净的”,为什么,或者它最终只是不使 crontab 条目过度混乱的问题?
谢谢大家,
干杯
【问题讨论】:
-
你能从命令行使用 jar 文件执行你的程序吗?
-
cron只需调用java。是java加载并执行jar文件。
标签: java bash amazon-web-services jar cron