我正在尝试编写一个连接到I MAP g邮件收件箱并从收件箱中检索所有邮件并处理它们的测试用例但是语句store.connect(host,userName,password);没有连接到g邮件商店。当我跟踪调试输出时,我得到的错误就像是吼叫
DEBUG: setDebug: JavaMail version 1.4.6
DEBUG: getProvider() returning javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Oracle]
DEBUG IMAPS: mail.imap.fetchsize: 16384
DEBUG IMAPS: mail.imap.ignorebodystructuresize: false
DEBUG IMAPS: mail.imap.statuscachetimeout: 1000
DEBUG IMAPS: mail.imap.appendbuffersize: -1
DEBUG IMAPS: mail.imap.minidletime: 10
DEBUG IMAPS: enable STARTTLS
DEBUG IMAPS: trying to connect to host "imap.gmail.com", port 993, isSSL true
我使用以下代码解决了这个问题。
MailSSLSocketFactory socketFactory= new MailSSLSocketFactory();
socketFactory.setTrustAllHosts(true);
properties.put("mail.imaps.ssl.socketFactory", socketFactory);
.........
Session session = Session.getDefaultInstance(properties);