小弟才學 JavaMail 安書上的例子寫了下面的代碼 編譯通過但是 運行不了 幫忙看看!!!!

CanFly 2001-11-27 10:19:03
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;

public class Assimilator{

public static void main(String args[]){

try{

Properties Props=new Properties();
Props.put("mail.host","163.net");

Session mailConnection=Session.getInstance(Props,null);
System.out.println("here");
Message msg=new MimeMessage(mailConnection);
Address bill=new InternetAddress("god@micorosoft.com");
Address elliotte=new InternetAddress("liuxing23@163.net");

msg.setContent("resis is full","text/plain");
msg.setFrom(bill);
msg.setRecipient(Message.RecipientType.TO,elliotte);
msg.setSubject("You Well");

Transport.send(msg);
}catch (Exception e){
e.printStackTrace();
}
}

}
錯誤提示如下:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/activation/DataSource
at Assimilator.main(Assimilator.java:17)
...全文
613 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
mindd 2001-11-27
  • 打赏
  • 举报
回复
我也遇到过这个问题的。可能是你的路径没有设置好。
set classpath=全路径名称
注意最后不要加“\”。
试试看,行不行。
Kert_ake 2001-11-27
  • 打赏
  • 举报
回复
import javax.activation.*;
skyyoung 2001-11-27
  • 打赏
  • 举报
回复
http://java.sun.com/beans/glasgow/jaf.html
下载它,加入classpath里
CanFly 2001-11-27
  • 打赏
  • 举报
回复
skyyoung(路人甲) 這回可以了 謝謝!
skyyoung 2001-11-27
  • 打赏
  • 举报
回复
用这个例子看看行否。
/*
* @(#)msgsendsample.java 1.17 00/06/14
*
* Copyright 1996-2000 Sun Microsystems, Inc. All Rights Reserved.
*
* Sun grants you ("Licensee") a non-exclusive, royalty free, license to use,
* modify and redistribute this software in source and binary code form,
* provided that i) this copyright notice and license appear on all copies of
* the software; and ii) Licensee does not utilize the software in a manner
* which is disparaging to Sun.
*
* This software is provided "AS IS," without a warranty of any kind. ALL
* EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
* IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
* NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE
* LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING
* OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS
* LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT,
* INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
* CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF
* OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGES.
*
* This software is not designed or intended for use in on-line control of
* aircraft, air traffic, aircraft navigation or aircraft communications; or in
* the design, construction, operation or maintenance of any nuclear
* facility. Licensee represents and warrants that it will not use or
* redistribute the Software for such purposes.
*/

import java.util.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

/**
* msgsendsample creates a very simple text/plain message and sends it.
* <p>
* usage: <code>java msgsendsample <i>to from smtphost true|false</i></code>
* where <i>to</i> and <i>from</i> are the destination and
* origin email addresses, respectively, and <i>smtphost</i>
* is the hostname of the machine that has the smtp server
* running. The last parameter either turns on or turns off
* debugging during sending.
*
* @author Max Spivak
*/
public class msgsendsample {
static String msgText = "This is a message body.\nHere's the second line.";

public static void main(String[] args) {
if (args.length != 4) {
usage();
System.exit(1);
}

System.out.println();

String to = args[0];
String from = args[1];
String host = args[2];
boolean debug = Boolean.valueOf(args[3]).booleanValue();

// create some properties and get the default Session
Properties props = new Properties();
props.put("mail.smtp.host", host);
if (debug) props.put("mail.debug", args[3]);

Session session = Session.getDefaultInstance(props, null);
session.setDebug(debug);

try {
// create a message
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = {new InternetAddress(args[0])};
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject("JavaMail APIs Test");
msg.setSentDate(new Date());
// If the desired charset is known, you can use
// setText(text, charset)
msg.setText(msgText);

Transport.send(msg);
} catch (MessagingException mex) {
System.out.println("\n--Exception handling in msgsendsample.java");

mex.printStackTrace();
System.out.println();
Exception ex = mex;
do {
if (ex instanceof SendFailedException) {
SendFailedException sfex = (SendFailedException)ex;
Address[] invalid = sfex.getInvalidAddresses();
if (invalid != null) {
System.out.println(" ** Invalid Addresses");
if (invalid != null) {
for (int i = 0; i < invalid.length; i++)
System.out.println(" " + invalid[i]);
}
}
Address[] validUnsent = sfex.getValidUnsentAddresses();
if (validUnsent != null) {
System.out.println(" ** ValidUnsent Addresses");
if (validUnsent != null) {
for (int i = 0; i < validUnsent.length; i++)
System.out.println(" "+validUnsent[i]);
}
}
Address[] validSent = sfex.getValidSentAddresses();
if (validSent != null) {
System.out.println(" ** ValidSent Addresses");
if (validSent != null) {
for (int i = 0; i < validSent.length; i++)
System.out.println(" "+validSent[i]);
}
}
}
System.out.println();
if (ex instanceof MessagingException)
ex = ((MessagingException)ex).getNextException();
else
ex = null;
} while (ex != null);
}
}

private static void usage() {
System.out.println("usage: java msgsendsample <to> <from> <smtp> true|false");
}
}
CanFly 2001-11-27
  • 打赏
  • 举报
回复
謝謝各位!我下了activation.jar 加到classpath 可以給我自己發信了
但是給被人發信就出現下面錯誤
javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
javax.mail.SendFailedException: 530 5.7.1 Relaying Not allowed: liuxing23@163.net

at javax.mail.Transport.send0(Transport.java:219)
at javax.mail.Transport.send(Transport.java:81)
at Assimilator.main(Assimilator.java:28)
liuxing23@163.net是確實存在的信箱!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧