JavaMail在Windows平台下正常发送邮件,部署到Linux后则发送失败
private boolean text(String em, String cdk) throws Exception {
boolean fl = false;
Properties props = new Properties();
props.setProperty("mail.transport.protocol","smtp");
props.setProperty("mail.smtp.host",myEmailSMTPHost);
props.setProperty("mail.smtp.auth","true");
props.put("mail.smtp.starttls.enable","true");
Session session = Session.getDefaultInstance(props);
session.setDebug(true); // 设置为debug模式, 可以查看详细的发送 log
MimeMessage message = createMimeMessage(session,myEmailAccount,em,cdk);
Transport transport = session.getTransport();
transport.connect(myEmailAccount,myEmailPassword);
transport.sendMessage(message,message.getAllRecipients());
transport.close();
fl = true;
return fl;
}
private static MimeMessage createMimeMessage(Session session, String sendMail, String receiveMail, String cdk) throws Exception {
// 1. 创建一封邮件
MimeMessage message = new MimeMessage(session);
// 2. From: 发件人
message.setFrom(new InternetAddress(sendMail,"验证码5分钟有效,请妥善保管。","UTF-8"));
// 3. To: 收件人)
message.setRecipient(MimeMessage.RecipientType.TO,new InternetAddress(receiveMail,receiveMail,"UTF-8"));
// 4. Subject: 邮件主题
message.setSubject("坚果邮箱验证码","UTF-8");
// 5. Content: 邮件正文
message.setContent(cdk,"text/html;charset=UTF-8");
// 6. 设置发件时间
message.setSentDate(new Date());
// 7. 保存设置
message.saveChanges();
return message;
}
我应该怎么办- -急