最近弄一个javamail后台发送邮件时出现以下错误:DEBUG: JavaMail version 1.4ea
DEBUG: java.io.FileNotFoundException: C:\Program Files\Java\jdk1.6.0_05\jre\lib\javamail.providers (系统找不到指定的文件。)
DEBUG: !anyLoaded
DEBUG: not loading resource: /META-INF/javamail.providers
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream
at javax.mail.Session.loadProvidersFromStream(Session.java:928)
at javax.mail.Session.access$000(Session.java:174)
at javax.mail.Session$1.load(Session.java:870)
at javax.mail.Session.loadResource(Session.java:1084)
at javax.mail.Session.loadProviders(Session.java:889)
at javax.mail.Session.<init>(Session.java:210)
at javax.mail.Session.getDefaultInstance(Session.java:299)
at com.test.SendAction.main(SendAction.java:44)其中SendAction.java:44 -----  Session session = Session.getDefaultInstance(props, null);

解决方案 »

  1.   

    好像是Java EE 5 Libraries 与 JavaMail的jar包有冲突。
      

  2.   

     把 javeEE 第一个包下的 mail 和 activation(是这么拼?) 去掉就好了
      

  3.   

    需要的两个JAR包读导入了?
    mail.jar
    activation.jar
      

  4.   

    C:\Program Files\Java\jdk1.6.0_05\jre\lib\javamail.providers 
    要自己引用
    import javax.mail.*; 
    import javax.mail.internet.*;
    import javax.activation.*;
    把j2ee 1.4加进去就行了,
      

  5.   

    "C:\Program Files\Java\jdk1.6.0_05\jre\lib\javamail.providers"
    双引号加了没有?