JavaMail,使用Gmail SMTP-can';不要发送消息

JavaMail,使用Gmail SMTP-can';不要发送消息,java,smtp,gmail,jakarta-mail,Java,Smtp,Gmail,Jakarta Mail,我想用JavaMail发送一封电子邮件,但每次我都会收到一个例外。我创建了一个JFrame项目,并为一个按钮创建了一个actionevent: private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { Properties props = new Properties(); props.put("mail.smtp.ho

我想用JavaMail发送一封电子邮件,但每次我都会收到一个例外。我创建了一个JFrame项目,并为一个按钮创建了一个actionevent:

  private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
  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");

  Session session = Session.getDefaultInstance(props,
          new javax.mail.Authenticator() {
              @Override
              protected PasswordAuthentication getPasswordAuthentication() {
                  return new PasswordAuthentication("xyz@gmail.com", "###");
              }
          }
  );
  //I've tried also this version of the Session:
  //Session session = Session.getInstance(props,new NewEmpty("xyz@gmail.com","###"));
  try {
      Message message = new MimeMessage(session);
      message.setFrom(new InternetAddress("xyz@gmail.com"));
      message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("zyx@gmail.com"));
      message.setSubject("Hi");
      message.setText("Helló!");

      Transport.send(message);
      JOptionPane.showMessageDialog(null, "Sent!");
  }catch(Exception e) {
      JOptionPane.showMessageDialog(null, e);
  }

}                                        
}

例外情况是:


您的屏幕截图显示SSL握手错误

您可能必须将其SSL证书或根证书导入您自己的java信任/密钥库


我找到了一个用于描述单个步骤的示例。

如果我理解的话。您已经在服务器中安装了.exe吗?关于可能的重复你是什么意思?什么.exe?不,我想。。。我有一台华硕笔记本电脑,并安装了NetBeans。我为项目类路径添加了JavaMail,但不起作用。DavidPostill-尝试过,但不起作用我正在尝试使用SSL创建它。请检查此项以及查看此项。通常,对于Gmail,你不应该遇到这个问题。可能您的JDK安装有问题,或者可能您遇到了防火墙阻止您连接。您还可以尝试在NetBeans之外运行应用程序,看看这是否有帮助。