发送邮件

运行如下代码,入错报java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream
可按如下方式解决:
进入MyEclipse的安装目录下(这是我机器上的MyEclipse安装目录,也许你的不同)
C:\Users\Administrator\MyEclipse 6.0\myeclipse\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_6.0.1.zmyeclipse601200710\data\libraryset\EE_5
这个目录下,可以看到javaee.jar包,双击使用压缩软件打开把这个包文件,然后进到javax文件夹中,删除mail目录和activation目录,也可能是jar包。
最后添加最新的mail.jar和activation.jar就OK了。

import java.util.Date; 

import java.util.Properties; 

import javax.mail.Message; 
import javax.mail.Session; 
import javax.mail.Transport; 
import javax.mail.internet.InternetAddress; 
import javax.mail.internet.MimeMessage; 

public class SendMail { 
	
	public static final String mailAddress ="发送邮箱地址"; 
	public static final String mailCount ="发送邮箱名"; 
	public static final String mailPassword ="发送邮箱密码"; 
	public static final String mailServer ="smtp.126.com";//所用服务,如果发送邮箱是126邮箱则用此配置 
	/** 
	* 发送简单邮件 
	* @param str_from:发件人地址 
	* @param str_to:收件人地址 
	* @param str_title:邮件标题 
	* @param str_content:邮件正文 
	*/ 
	public static void send(String str_from,String str_to,String str_title,String str_content) { 
	
		// str_content="<a href='www.163.com'>html元素</a>"; //for testing send html mail! 
		
		try { 
			//建立邮件会话 
			Properties props=new Properties(); //用来在一个文件中存储键-值对的,其中键和值是用等号分隔的, 
			//存储发送邮件服务器的信息 
			props.put("mail.smtp.host",SendMail.mailServer); 
			//同时通过验证 
			props.put("mail.smtp.auth","true"); 
			//根据属性新建一个邮件会话 
			Session s=Session.getInstance(props); 
			s.setDebug(true); //有他会打印一些调试信息。 
			
			//由邮件会话新建一个消息对象 
			MimeMessage message=new MimeMessage(s); 
			
			//设置邮件 
			InternetAddress from= new InternetAddress(str_from); //pukeyouxintest2@163.com 
			message.setFrom(from); //设置发件人的地址 
			// 
			// //设置收件人,并设置其接收类型为TO 
			InternetAddress to=new InternetAddress(str_to); //pukeyouxintest3@163.com 
			message.setRecipient(Message.RecipientType.TO, to); 
			
			//设置标题 
			message.setSubject(str_title); //java学习 
			
			//设置信件内容 
			// message.setText(str_content); //发送文本邮件 //你好吗? 
			message.setContent(str_content, "text/html;charset=gbk"); //发送HTML邮件 //<b>你好</b><br><p>大家好</p> 
			//设置发信时间 
			message.setSentDate(new Date()); 
			
			//存储邮件信息 
			message.saveChanges(); 
			
			//发送邮件 
			Transport transport=s.getTransport("smtp"); 
			//以smtp方式登录邮箱,第一个参数是发送邮件用的邮件服务器SMTP地址,第二个参数为用户名,第三个参数为密码 
			transport.connect(SendMail.mailServer,SendMail.mailCount,SendMail.mailPassword); 
			//发送邮件,其中第二个参数是所有已设好的收件人地址 
			transport.sendMessage(message,message.getAllRecipients()); 
			transport.close(); 
	
		} catch (Exception e) { 
			e.printStackTrace(); 
		} 
	} 
	
	public static void main(String[] args) { 
		//测试用的,你吧你想写的内容写上去就行 
		send(SendMail.mailAddress,"接收邮箱","标题","<b>内容</b>"); 
	} 
}


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值