When I compile a simple code that has the following 2 import statements:
import javax.mail.*
import javax.mail.internet.*
I get the following message:
package javax.mail does not exist
package javax.mail.internet does not exist
Why do I get this error?
Here is the code I have:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
class tester {
public static void main(String args[]) {
Properties props = new Properties();
props.put("mail.smtp.com" , "smtp.gmail.com");
Session session = Session.getDefaultInstance( props , null);
String to = "me@gmail.com";
String from = "from@gmail.com";
String subject = "Testing...";
Message msg = new MimeMessage(session);
try {
msg.setFrom(new InternetAddress(from));
msg.setRecipient(Message.RecipientType.TO , new InternetAddress(to));
msg.setSubject(subject);
msg.setText("Working fine..!");
} catch(Exception exc) {
}
}
}
You need to download the JavaMail API, and put the relevant jar files in your classpath.
ANT
. Tell me one thing, where the default jars placed in JDK, just like, import java.io.*
. This helps me to put my jar in that default location. Please tell me that - devsda 2013-04-16 10:42
Download javax.mail.jar
and add it to your project using the following steps:
If using maven, just add to your pom.xml:
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.5.0-b01</version>
</dependency>
Of course, you need to check the current version.
You need the javax.mail.jar
library.
Download it from Java.net and add it to your IntelliJ project:
javax.mail.jar
File > Project Structure...
+
button (Add New Project Library)javax.mail.jar
fileIt might be that you do not have the necessary .jar files that give you access to the Java Mail API. These can be downloaded from here.
you have to set the classpath of your mail.jar
and activation.jar
file like that:
open the command prompt:
c:\user>set classpath=%classpath%;d:\jarfiles\mail.jar;d:\jarfiles\activation.jar;.;
and if u don't have the both file then please download them here
ProjectName\WebContent\WEB-INF\lib
folderSelect the .jar file from ProjectName\WebContent\WEB-INF\lib
and click OK
that's all
For anyone still looking to use the aforementioned IMAP library but need to use gradle, simply add this line to your modules gradle file (not the main gradle file)
compile group: 'javax.mail', name: 'mail', version: '1.4.1'
The links to download the .jar file were dead for me, so had to go with an alternate route.
Hope this helps :)
you need mail.jar and activation.jar to build javamail application
Download "javamail1_4_5.zip" file from http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-eeplat-419426.html#javamail-1.4.5-oth-JPR
Extract zip file and put the relevant jar file ("mail.jar") in the classpath
I just resolved this for myself, so hope this helps. My project runs on GlassFish 4, Eclipse MARS, with JDK 1.8 and JavaEE 7.
Firstly, you can find javax.mail.jar
in the extracted glassfish
folder: glassfish4->glassfish->modules
Next, in Eclipse, Right Click on your project in the explorer and navigate the following: Properties->Java Build Path->Libraries->Add External JARs->
Go to the aforementioned folder to add javax.mail.jar
Had the same issue. Obviously these .jars were included with Java <= v8.x out of the box, but are not anymore. Thus one has to separately download them and place them in the appropriate classpath as highlighted by several folks above. I understand that the new Java is modularized and thus potentially more light-weight (which is certainly a good thing, since the old setup was a monster). On the other hand this - as we can see - breaks lots of old build setups. Since the time to fix these isn't chargeable to Oracle I guess this made their decision easy...
javax.mail.jar
, but I didn't understand where I put this jar? Help me in that - devsda 2013-04-16 10:37