Spring发邮件-Unable to locate provider for protocol: smtp

 

依赖以下:java

[INFO] |  +- org.apache.geronimo.specs:geronimo-javamail_1.4_spec:jar:1.7.1:compile
[INFO] |  +- org.apache.geronimo.specs:geronimo-activation_1.1_spec:jar:1.1:compile

 

异常以下:linux

org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.NoSuchProviderException: Unable to locate provider for protocol: smtp. Failed messages: javax.mail.NoSuchProviderException: Unable to locate provider for protocol: smtp; message exception details (1) are:
Failed message 1:
javax.mail.NoSuchProviderException: Unable to locate provider for protocol: smtp
        at javax.mail.Session.getProvider(Session.java:237)
        at javax.mail.Session.getTransport(Session.java:346)
        at org.springframework.mail.javamail.JavaMailSenderImpl.getTransport(JavaMailSenderImpl.java:459)
        at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:388)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:340)
        at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:336)

 

解决方案:spring

参考apache

http://comments.gmane.org/gmane.comp.java.servicemix.user/5205

 

替换上述依赖jar包为:ide

activation-1.1.jar
mail-1.4.jar

 

具体缘由:搜索引擎

linux下,没法使用上述依赖的包。替换后,done!!!spa

 

本身的一些感悟:code

你遇到的问题,基本上都已经有人遇到了。毕竟,你在使用别人开发的技术。因此,必定要善于利用搜索引擎和多多总结。
相关文章
相关标签/搜索