【问题标题】:Making a java application run automatically once in a day? [closed]让java应用程序一天自动运行一次? [关闭]
【发布时间】:2014-11-19 14:21:13
【问题描述】:

我在java中做了一个提醒应用程序。我想只在下午12点运行那个应用程序,然后它会生成一封邮件给客户端。生成邮件的事情已经完成,但现在的主要问题是如何让应用程序运行每天中午 12 点……

【问题讨论】:

  • 这不是一个java问题,它完全取决于你的系统。您使用的是什么操作系统?
  • 您可以让应用程序作为守护程序/服务运行,Timer 计划在下午 12 点运行,间隔设置为 24 小时......看起来更简单,更少依赖于操作系统的 IMO。
  • windows 8 我应该让我的系统成为服务器

标签: java scheduled-tasks


【解决方案1】:

使用 cron(仅限 Unix)

将此添加到您的 cron 选项卡中

0 0 * * * /path/to/your/file.sh >/dev/null 2>&1

文件.sh

#!/bin/sh
java com.package.YourMainClass

编辑

在 Windows 8 上,请看这里:Using Task Scheduler in Windows 8

【讨论】:

    【解决方案2】:

    您可以保持应用程序运行并自己进行调度。例如,使用Quartz

    【讨论】:

    • 所以有一个叫谷歌的东西....
    • 谢谢,我觉得很有趣
    【解决方案3】:

    如果您使用的是 UNIX,则可以使用 cron

    【讨论】:

    • 我使用的是 Windows 8
    【解决方案4】:

    可以通过两种方式解决。 1. 让操作系统使用 cron 或其他调度程序每天运行一次。

    1. 另一种方法是使用http://sourceforge.net/projects/yajsw/ 或其他服务包装助手将程序安装为服务。

    然后让你的程序在后台运行,每分钟有一个计时器。到时候,做任务。这很棒,因为您的程序也可以轻松接受其他触发器的配置。将其安装为服务的优点是它将在系统启动时自动运行并在后台继续运行。确保捕获异常,记录它们,但尝试继续运行,这样程序就不会因可恢复和暂时性错误而退出。

    在这两种情况下,您都将创建一个带有可选 UI 程序的非 UI 程序,该程序写入 java 首选项 API 以告诉守护程序任何用户特定的首选项。

    如果您不想安装一些用户不想将其安装为服务,也可以从命令行运行服务应用程序。

    定时器可以看How to set a timer in java

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 2014-01-06
      • 2015-10-24
      • 2020-06-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多