使用Java在Mac上以编程方式发送电子邮件(通过Mac Mail Client)

时间:2011-05-24 18:04:43

标签: java macos email applescript rococoa

我已就此事做了大量研究,似乎无法为我的问题找到可靠的解决方案。

我正在开发一个Java客户端应用程序,该应用程序允许用户通过以列表格式获取联系人,并允许用户选择子集/全部并单击一个发送“邀请“给这些用户。”

我能够使用Rococoa Java框架获取联系人,但我不确定如何发送电子邮件或者是否可能。我意识到这有安全问题,但我能够在Outlook for PC上完成同样的任务。

似乎我可能不得不从我的Java调用Applescript手动打开Mac Mail Client并使用他们的默认邮件帐户设置发送电子邮件。

我可能完全离开这里...我是否应该通过用户的默认邮件帐户来发送邮件?我想避免使用其他邮件服务器以避免垃圾邮件等。

感谢您的帮助,谢谢您的时间。

  • 马特

1 个答案:

答案 0 :(得分:2)

这是一个使用Mail的AppleScript ...

set emailSender to "sender@email.com>"
set emailTo to "recipient@email.com"
set theSubject to "The subject of the mail"
set theContent to "message body"

tell application "Mail"
    set newMessage to make new outgoing message with properties {sender:emailSender, subject:theSubject, content:theContent, visible:true}
    tell newMessage
        make new to recipient at end of to recipients with properties {address:emailTo}
        send
    end tell
end tell

如果您知道smtp信息,另一个选择是使用python。我制作了一个你可以使用的命令行程序。找到它here。有在网页上使用它的示例代码。