Frage

While sending email I am getting the following errors using commons-email-1.3.
I have downloaded and added external jar's to the project.
Please help me fix this problem!

package mypkg;

import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.Email;
import org.apache.commons.mail.SimpleEmail;

public class sendingmail {
     public static void main(String[] args)  throws Exception {
            Email email = new SimpleEmail();
            email.setSmtpPort(587);
            email.setAuthenticator(new DefaultAuthenticator("myid","mypwd")); //Here is the error
            email.setDebug(false);
            email.setHostName("smtp.gmail.com");
            email.setFrom("me@gmail.com");
            email.setSubject("Hi");
            email.setMsg("This is a test mail ... :-)");
            email.addTo("you@gmail.com");
            email.setTLS(true);
            email.send();
            System.out.println("Mail sent!");

    }
}

The line that gives the error is

email.setAuthenticator(new DefaultAuthenticator("myid","mypwd"));

The error message is

Exception in thread "main" java.lang.Error: Unresolved compilation problems:

The type javax.mail.Authenticator cannot be resolved. It is indirectly referenced from required .class files
The method setAuthenticator(Authenticator) from the type Email refers to the missing type Authenticator at mypkg.mailtest.main(mailtest.java:13)

War es hilfreich?

Lösung

Please download the jars from the specified links

Activation JAR

Java Mail jar

Andere Tipps

You need both mail.jar and activation.jar in your classpath.

open file pom.xml, add code:

<dependencies>

  <!-- http://mvnrepository.com/artifact/org.apache.commons/commons-email -->   
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-email</artifactId>
        <version>1.4</version>
    </dependency>
</dependencies>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top