在Java或Python中安排未来发送电子邮件的时间

1 投票
6 回答
4432 浏览
提问于 2025-04-16 04:22

我正在写一个应用程序,想要让它能够安排在未来的某个时间发送电子邮件(可能是在运行后一个小时)。我会用Python或Java这两种编程语言。

有没有什么开源工具可以实现这个功能呢?

补充一下:我忘了提,这个程序是在测试运行后执行的,所以应用程序会已经关闭,我觉得Quartz这个解决方案可能不适用。这种情况可以实现吗?

理想情况下,我希望听到SMTP协议有一些隐藏的功能,可以让我们只需在邮件中添加一个标记,邮件服务提供商就会理解为要稍后发送。

6 个回答

2

你可以使用JavaMail来创建要发送的邮件,包括附件等,然后把它保存到电脑上。接着,你可以把这个邮件文件交给Linux的批处理系统,像这样发送:“mail foo@bar.com < 从JavaMail生成的文本文件”。

还有一个叫“at”的命令,它很可能正好能满足你的需求。

3

Quartz 是一个很棒的 Java 库,适合用来执行一些你想在特定时间、或者经过一段时间后运行的功能。

另外,JDK 里还有一个叫 Timer 类

7

Quartz Scheduler 可以用来处理这类异步任务。

撰写回答