java - 为什么在 Java 中实例化 SimpleEmail 类时会收到此异常?

标签 java email smtp apache-commons

我想要做的就是用 Java 发送一封电子邮件。这是我找到的示例:

import org.apache.commons.mail.SimpleEmail;

public class Email {

    public static void sendMessage(String emailaddress, String subject, String body) {
        try {
            SimpleEmail email = new SimpleEmail();
            email.setHostName("valid ip address here");
            email.addTo(emailaddress);
            email.setFrom("noreply@example.com", "No reply");
            email.setSubject(subject);
            email.setMsg(body);
            email.send();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}

我立即在 SimpleEmail email = new SimpleEmail(); 上收到以下异常线:
java.lang.ClassNotFoundException: org.apache.commons.mail.SimpleEmail

我的项目中有以下 JAR(使用 Netbeans):commons-email-1.2.jar
我究竟做错了什么?

谢谢。

最佳答案

我试图运行你的代码并得到这个:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Message
    at javaapplication3.Email.sendMessage(Email.java:9)
    at javaapplication3.JavaApplication3.main(JavaApplication3.java:7)
Caused by: java.lang.ClassNotFoundException: javax.mail.Message
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 2 more
Java Result: 1`

似乎缺少某些导入。您需要 javax.mail包来运行你的代码。

关于java - 为什么在 Java 中实例化 SimpleEmail 类时会收到此异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6847178/

相关文章:

java - 在 Web 应用程序中动态保存文件

java - 菜单抛出异常 - android.view.WindowManager$BadTokenException : Unable to add window -- token null is not for an application

java - 以编程方式将表字段值更新为 null

html - 雅虎!邮件 HTML 电子邮件对齐问题

asp.net-mvc - 使用 smtp gmail 服务器从 Amazon EC2 实例发送电子邮件

c++ - fatal error : openssl/e_os2. h:没有那个文件或目录

java - 将字符串形式的电话号码更改为所有数字

php - HTML 电子邮件显示为代码而不是 css 页面

c# - 将 Logo 附加到 ASP.NET 生成的电子邮件时出错

c# - 在 ASP.Net 中发送电子邮件的最低限度