NoSuchProviderException异常

javax.mail.NoSuchProviderException: mail.transport.protocol property is not set

这个异常折磨了很长时间,来记录一下.

protocol 属性是设置了.但是他 还是一直报not set.

我这里是先查询邮件,然后根据邮件内容再发送邮件.

报错是因为:

Session.getDefaultInstance(props);

这一句.

改成

Session.getInstance(props);

查询资料是因为getDefaultInstance读取缓存,发送邮件的时候会读取到收取邮件的protocol,

就是本来是smtp协议的,读取缓存后没有读取到smtp,而是读取到了pop3

原文地址:https://www.cnblogs.com/kasher/p/7513442.html