Программа выходит из "new MimeMessage (session)" в исполняемом jar - PullRequest
1 голос
/ 15 мая 2019

Я использую javax.mail-1.6.1.jar для отправки писем с моего аккаунта Gmail.Он отлично работает, когда я запускаю свою программу в Eclipse, но когда я запускаю свою программу как исполняемый файл jar, она останавливается в этой строке - MimeMessage message = new MimeMessage (session);Нет исключений.

public void sendEmail(String from, String to,String subject, String body, 
String attachmentName){
  try {
      Session session = Session.getDefaultInstance(fMailServerConfig, new SMTPAuthenticator());
      Log.getInstance(Emailer.class).getLogger().error("getProperty == "+fMailServerConfig.getProperty("mail.smtp.host"));

      MimeMessage message = new MimeMessage(session);
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
      message.setSubject(subject);
      message.setSentDate(new Date());

      // Set the email msg text.
      MimeBodyPart messagePart = new MimeBodyPart();
      messagePart.setText(body);

      // Set the email attachment file
      FileDataSource fileDataSource = new FileDataSource(attachmentName);
      MimeBodyPart attachmentPart = new MimeBodyPart();
      attachmentPart.setDataHandler(new DataHandler(fileDataSource));
      attachmentPart.setFileName(fileDataSource.getName());

      // Create Multipart E-Mail.
      Multipart multipart = new MimeMultipart();
      multipart.addBodyPart(messagePart);
      multipart.addBodyPart(attachmentPart);

      message.setContent(multipart);
      // Send the msg. Don't forget to set the username and password
      // to authenticate to the mail server.
      Transport.send(message);
  } catch (Exception e) {
      Log.getInstance(Emailer.class).getLogger().error("Cannot send email."+ e);
      System.err.println("Cannot send email. " + e);
  }

}

...