Первый раз работаю с java почтой. Я следую этому учебнику , но мне уже не удается отправить базовое c сообщение, и я получаю очень странную ошибку:
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);
Ошибка происходит в последней строке (отправить). Я знаю, что сервер SMTP правильный и работает.
Любой совет, почему это происходит и как я могу это решить?
РЕДАКТИРОВАТЬ: очевидно, что адреса / хосты здесь изменены, и я использую реальный те, которые работают в реальном коде.