У меня есть следующий код
import javax.mail.*
def host = "imap.gmail.com"
def port = "993"
def username = "[email protected]"
def password = "password"
Properties props = new Properties()
props.setProperty("mail.store.protocol", "imap")
props.setProperty("mail.imap.host", host)
props.setProperty("mail.imap.port", port)
def session = Session.getDefaultInstance(props, null)
def store = session.getStore("imap")
store.connect(host, username, password)
def folder = store.getFolder("INBOX")
folder.open(Folder.READ_WRITE)
folder.messages.each { msg ->
println msg.subject
}
но когда я запускаю этот скрипт, он просто зависает после компиляции. Что я делаю не так?
В gmail нам необходимо обеспечить соблюдение SSL. для этого я просто добавил
props.setProperty("mail.imap.ssl.enable", "javax.net.ssl.SSLSocketFactory");
props.setProperty("mail.imap.socketFactory.fallback", "false");
и это устранило проблему
Редактировать:
Лучшим решением будет сделать следующее:
props.setProperty("mail.imap.ssl.enable", "true");
Спасибо @Bill Шеннон, чтобы указать на это.