Ошибка при отправке : исключение почты в потоке «основной» java.lang.NoClassDefFoundError: исключение javax/mail/MessagingException в testmail.main(testmail.java:4)

#java #email #jakarta-mail #java.lang

#Ява #Адрес электронной почты #джакарта-почта #java.lang

Вопрос:

Пытаясь отправить почту с помощью smtp, использовал все необходимые файлы jar(mail.jar и activation.jar) но всегда показывает эту ошибку

ошибка, отображаемая при запуске файла testmail

Я использовал два класса, один из которых предназначен для отправки электронной почты, а другой вызывает функцию в этом файле

Код для sendmail.java

 import javax.mail.*;  import javax.mail.internet.*;  class SendMail{   public static void send(String from,String password,String to,String sub,String msg){   //Get properties object   Properties props = new Properties();   props.put("mail.smtp.host", "smtp.gmail.com");   props.put("mail.smtp.socketFactory.port", "465");   props.put("mail.smtp.socketFactory.class",   "javax.net.ssl.SSLSocketFactory");   props.put("mail.smtp.auth", "true");   props.put("mail.smtp.port", "465");   //get Session   Session session = Session.getDefaultInstance(props,   new javax.mail.Authenticator() {   protected PasswordAuthentication getPasswordAuthentication() {   return new PasswordAuthentication(from,password);   }   });   //compose message   try {   MimeMessage message = new MimeMessage(session);   message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));   message.setSubject(sub);   message.setText(msg);   //send message   Transport.send(message);   System.out.println("message sent successfully");   } catch (MessagingException e) {throw new RuntimeException(e);}     }  }   

Код для testmail.java

 public class testmail{   public static void main(String[] args) {   //from,password,to,subject,message   SendMail.send("myemail","mypassword","reciever","hello javatpoint","How r u?");  System.out.println("message sent successfully");   //change from, password and to   }  }   

оба файла компилируются, но когда я выполняю файл testmail, отображается ошибка

Я использовал сервер apache tomcat 9.0

Ответ №1:

пожалуйста , проверьте свою версию javax.mail , которую я использую 1.6.2 , нет проблем с запуском вашего кода.