用eclipse建立一个java工程,路径:D:\matrix\workspace\email,在该路径下:D:\matrix\workspace\email\com\matrix\send,有个发送电子邮件的类SimpleSender,其.java文件如下:
-------------------------------------------------------------
package com.matrix.send;import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;public class SimpleSender { /**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
try{ String smtpServer=args[0]; String to=args[1]; String from=args[2]; String subject=args[3]; String body=args[4]; send(smtpServer, to, from, subject, body);
}
catch (Exception ex)
{
System.out.println("Usage: java com.matrix.send.SimpleSender"
+" smtpServer toAddress fromAddress subjectText bodyText");
} System.exit(0);
}
public static void send(String smtpServer, String to, String from, String subject, String body)
{
try
{ Properties props = System.getProperties();
// -- Attaching to default Session, or we could start a new one --
props.put("mail.smtp.host", smtpServer);
Session session = Session.getDefaultInstance(props, null);
// -- Create a new message --
Message msg = new MimeMessage(session);
// -- Set the FROM and TO fields --
msg.setFrom(new InternetAddress(from));
msg.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(to, false)); // -- We could include CC recipients too --
// if (cc != null)
// msg.setRecipients(Message.RecipientType.CC
// ,InternetAddress.parse(cc, false));
// -- Set the subject and body text -- msg.setSubject(subject);
msg.setText(body); // -- Set some other header information --
msg.setHeader("X-Mailer", "LOTONtechEmail");
msg.setSentDate(new Date()); // -- Send the message --
Transport.send(msg);
System.out.println("Message sent OK.");
}
catch (Exception ex)
{
System.out.println("send error!");
ex.printStackTrace();
}
}
}
--------------------------------------------------------------
在命令行:
D:\matrix\workspace\email\com\matrix\send>java SimpleSender smtp.tom.com matrix2005 matrix2005 "test" "test"Exception in thread "main" java.lang.NoClassDefFoundError: SimpleSender请各位大虾指教!!!!
-------------------------------------------------------------
package com.matrix.send;import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;public class SimpleSender { /**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
try{ String smtpServer=args[0]; String to=args[1]; String from=args[2]; String subject=args[3]; String body=args[4]; send(smtpServer, to, from, subject, body);
}
catch (Exception ex)
{
System.out.println("Usage: java com.matrix.send.SimpleSender"
+" smtpServer toAddress fromAddress subjectText bodyText");
} System.exit(0);
}
public static void send(String smtpServer, String to, String from, String subject, String body)
{
try
{ Properties props = System.getProperties();
// -- Attaching to default Session, or we could start a new one --
props.put("mail.smtp.host", smtpServer);
Session session = Session.getDefaultInstance(props, null);
// -- Create a new message --
Message msg = new MimeMessage(session);
// -- Set the FROM and TO fields --
msg.setFrom(new InternetAddress(from));
msg.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(to, false)); // -- We could include CC recipients too --
// if (cc != null)
// msg.setRecipients(Message.RecipientType.CC
// ,InternetAddress.parse(cc, false));
// -- Set the subject and body text -- msg.setSubject(subject);
msg.setText(body); // -- Set some other header information --
msg.setHeader("X-Mailer", "LOTONtechEmail");
msg.setSentDate(new Date()); // -- Send the message --
Transport.send(msg);
System.out.println("Message sent OK.");
}
catch (Exception ex)
{
System.out.println("send error!");
ex.printStackTrace();
}
}
}
--------------------------------------------------------------
在命令行:
D:\matrix\workspace\email\com\matrix\send>java SimpleSender smtp.tom.com matrix2005 matrix2005 "test" "test"Exception in thread "main" java.lang.NoClassDefFoundError: SimpleSender请各位大虾指教!!!!
java com.matrix.send.SimpleSender smtp.tom.com matrix2005 matrix2005 "test" "test"
或者你的类文件放目录正确,新建个类然后把代码Copy过去,再编译就OK了
CLASSPATH = .;$JAVA_HOME/lib
关于环境变量的设置,能说的具体一点吗?
我重新建了一个类,也不行.
也设置了,我的classpass:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;D:\matrix\myclasses;D:\Tomcat 5.5\common\lib\servlet-api.jar;D:\javaMail\mail.jar;D:\javaMail\activation.jar
刚开始是看教程,所以按照它所说的做.
现在在eclipse里头可以了,但是按照java path/*.class,还是出现那个错误!!
晕~