alumnus system - myeclipse 8.5环境下 测试邮件发送

我在想是写一个笔记呢还是写两个呢,我想来想去,还是写成两个吧,以后看的时候也比较方便一点.

第一个如题所示,整理一个发送邮件的方法.

在网上查了很多方式,最后发现了一个不错的小jar包,调试过程中遇到的一些问题通过各种查找资料也解决啦,嘻嘻

在网上大神们的帮助下,终于查到一个发送邮件的不错的jar包:

commons-email-1.1.jar;配合它使用的是mail.jar和activation.jar.这三个是必须的哟.

之后开始程序,其实挺简单的:

package JavaMail; import java.net.MalformedURLException; import java.net.URL; import org.apache.commons.mail.EmailAttachment; import org.apache.commons.mail.EmailException; import org.apache.commons.mail.HtmlEmail; public class Send { /** * @param args * @throws EmailException * @throws MalformedURLException */ public static void main(String[] args) throws EmailException, MalformedURLException { // TODO Auto-generated method stub /** * 不带附件的 */ // SimpleEmail email = new SimpleEmail(); // try { // email.setHostName("smtp.163.com"); //Yahoo的服务器地址是:smtp.mail.yahoo.com // email.addTo("ly_wdfm@yeah.net", "John Doe"); // email.setFrom("quxinlong2008@163.com", "Mr Smith"); // email.setAuthentication("quxinlong2008", "20081311"); // email.setSubject("中文"); // email.setCharset("GB2312");//中文的话,要设置这个属性 // email.setMsg("中文呢"); // email.send(); // } catch (EmailException e) { // e.printStackTrace(); // } /** * 带附件的 */ // 创建一个Email附件 EmailAttachment emailattachment = new EmailAttachment(); emailattachment.setPath("biao_05.jpeg"); //这个图片放在项目根目录下 emailattachment.setDisposition(EmailAttachment.ATTACHMENT); emailattachment.setDescription("This is Smile picture"); emailattachment.setName("bulktree"); // 创建一个email HtmlEmail multipartemail = new HtmlEmail(); multipartemail.setHostName("smtp.163.com"); multipartemail.addTo("songnanmail@126.com", "皮皮"); multipartemail.setFrom("发件人邮箱", "显示发件人姓名"); multipartemail.setAuthentication("发件人邮箱(去掉'@163.com')", "这是邮箱的密码"); multipartemail.setSubject("这是用java程序发送的一个邮件"); //设置图片的路径 URL url = new URL("http://www.apache.org/images/asf_logo_wide.gif"); String cid = multipartemail.embed(url, "Apache logo"); // set the html message(以html的形式发送邮件 multipartemail.setCharset("gb2312"); multipartemail.setHtmlMsg("<html>这是email发送的文字,html形式的哦 - <img src=\"cid:"+cid+"\"></html>"); // set the alternative message multipartemail.setTextMsg("Your email client does not support HTML messages"); //添加附件 multipartemail.attach(emailattachment); //发送邮件 multipartemail.send(); System.out.println("Send sucessful."); } }


按理说,这样的话,就应该能发送了,但是 在Java EE 5环境下遇到异常:Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream<wbr></wbr>

这个问题是因为jar包冲突了,查了网上好多解决的办法是去掉myeclipse的j2ee下的mail目录,一般提供的目录是:D:\Program Files\MyEclipse 5.5 GA\myeclipse\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_5.5.0\data\libraryset\EE_5.

同样我也遇到了这样的问题,但是,我用的版本是myeclipse8.5,找了老长时间都没有找到这个路径,晕死...

后来想起chyxion说过的myeclipse的强大功能,那就是查找功能,既然我不知道路径在哪,那就用myeclipse查找吧,哈哈~查什么呢,既然都是引入的包,不妨查一下"library",在myeclipse中,选择"window"--"preferences",然后在框里输入"library", well,还真的出来了呢:


点击"add JAR/ZIP"后,就看到路径啦:



然后就是按照网上说的,用rar打开这个jar包,删除掉mail文件夹就可以啦.


ps:不能忘记,删除myeclipse的struts2中默认引入的系统核心包其中的一个也是这种方法呢,哼哼哼~

另外附上官网的东东:http://commons.apache.org/email/userguide.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值