第一次使用Java Mail。我正在按照这个教程进行操作,但是在发送基本消息时就出错了,并且我收到一个非常奇怪的错误:
java.util.ServiceConfigurationError: javax.mail.Provider: Provider com.sun.mail.imap.IMAPProvider not a subtype
奇怪的是我在代码中没有使用IMAP:
Properties mailProps = new Properties();
mailProps.put("mail.transport.protocol", "smtp");
mailProps.put("mail.host", "smtp.mydomain.com");
mailProps.put("mail.from", "me@mydomain.com");
mailProps.put("mail.smtp.port", "25");
Session session = Session.getDefaultInstance(mailProps);
SMTPMessage m = new SMTPMessage(session);
MimeMultipart content = new MimeMultipart();
MimeBodyPart mainPart = new MimeBodyPart();
mainPart.setText("test");
content.addBodyPart(mainPart);
m.setContent(content);
m.setSubject("Demo message");
m.setRecipient(RecipientType.TO, new InternetAddress("john@example.com"));
Transport.send(m);
错误发生在最后一行(send)。我知道smtp服务器是正确的并且工作正常。
有什么建议可以解决这个问题吗?
编辑:显然,这里更改了地址/主机,并且我正在使用实际代码中有效的地址。