我必须给主类加上JavaMailUtl类这是我的JavaMailUtl类:
import javax.mail.Authenticator;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class JavaMailUtl {
public static void sendMail(String recepient) throws Exception{
System.out.println("Preparing Email");
Properties properties = new Properties();
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.port", "587");
String myAccountEmail = "someEmail@gmail.com";
String password = "xxxxxxxx";
Session session = Session.getInstance(properties, new Authenticator() {
@Override
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(myAccountEmail, password);
}
});
Message message = prepareMessage(session, myAccountEmail, recepient);
Transport.send(message);
System.out.println("Message sent!");
}
private static Message prepareMessage(Session session, String myAccountEmail, String recepient){
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(myAccountEmail));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(recepient));
message.setSubject("Gmail API");
message.setText("This Message sent from Java APP");
} catch (Exception ex) {
Logger.getLogger(JavaMailUtl.class.getName()).log(Level.SEVERE, null, ex);
}
return null;
}
}
这是我的主要课程:
public class JavaEmailMessaging {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws Exception {
JavaMailUtl.sendMail("someOtherEmail@gmail.com");
}
}
当我尝试运行项目时,出现以下错误:
Preparing Email
Exception in thread "main" java.lang.NullPointerException
at javax.mail.Transport.send(Transport.java:123)
at mailing.email.messaging.JavaMailUtl.sendMail(JavaMailUtl.java:43)
at mailing.email.messaging.JavaEmailMessaging.main(JavaEmailMessaging.java:18)
多次仔细检查代码,发现没有问题,我的每个对象都指向了正确的位置。
您的prepareMessage方法返回null。在“尝试”之前定义消息,然后返回消息。
类似这样:
private static Message prepareMessage(Session session, String myAccountEmail, String recepient) {
Message message = null;
try {
message = new MimeMessage(session);
message.setFrom(new InternetAddress(myAccountEmail));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(recepient));
message.setSubject("Gmail API");
message.setText("This Message sent from Java APP");
} catch (Exception ex) {
Logger.getLogger(JavaMailUtl.class.getName()).log(Level.SEVERE, null, ex);
}
return message;
}
希望这有帮助。
编辑:另外,值得注意的是,Java 14中的一个增强应该可以减少这种情况的痛苦。您将获得有关什么是null的更多信息。
我正在尝试使用javamail从一个帐户向另一个帐户发送电子邮件。但代码无法执行传输。发送(msg);线可能的原因是什么?下面是以下jsp代码。
在尝试设置Python包(mlabwrap)时,我收到以下链接错误: build命令如下所示: c-pthread-shared-Wl,-O1-Wl,-Bsymbolic functions-Wl,-Bsymbolic functions-Wl,-z,relro-fno严格别名-DNDEBUG-g-fwrapv-O2-Wall-Wstrict原型-D_FORTIFY_SOURCE=2-g-fsta
我刚接触Spring,我可能犯了最愚蠢的错误,但我不能解决这个问题超过2个小时。根据视频教程,我做了分页,我做的和他的一模一样,但他在实体之间没有关系。我认为错误在于作者和图书实体之间的一对一关系。你能帮忙吗? 我想添加分页,因为我的表中有100多万条记录,在添加分页后,我出现了这个错误。 账簿实体: 作者实体: BookServiceImpl类: } LibrarianController类:
我正在使用Fresco库将图像和GIF加载到我的应用程序中。我遇到的最大的限制是壁画的布局宽度和高度必须设置。因此,我设置了简单的付款人视图,如下所示: 我的问题是,如果图像的高度大于宽度,那么在图像的右边有很多空白(见附件),但是高度是好的 然后它可能发生在高度,如果实际图像小于宽度(见附件),所以这里,因为固定的高度是250dp,有很多空白的图像下面。
提供了大量的库例程。 有些内置在解释器, ex.exe, exw.exe or exu 。 其他的是用Euphoria编写的,你必须在euphoria\include目录中包含一个.e文件才能使用它们。 要指出可以传入和返回的对象类型,使用以下前缀 - S.No 前缀和描述 1 x 一般对象(原子或序列) 2 s 一个序列 3 a 一个原子 4 i 整数 5 fn 用作文件编号的整数 6 st 字
问题内容: 我正在尝试获取这个伐木工人库,并且它总是挂在下载步骤上。 我在星期五和今天都遇到了同样的问题。其他Go软件包安装正常。我正在使用Scientific Linux。有什么想法怎么回事? (它挂在最后一行,到目前为止,我已经运行了20分钟。) 问题答案: 谢谢@Jimb。将git升级到较新版本可解决此问题。