【问题标题】:setting classpath variable while using javamail使用 javamail 时设置类路径变量
【发布时间】:2014-02-05 13:19:37
【问题描述】:

我正在尝试使用 JavaMail API。 我已经下载了 javamail 1.4 和 jaf1.1.1 。 我已将类路径变量更改为

C:\Program Files (x86)\jaf-1_1_1\jaf-1.1.1\activation.jar;C:\Program Files (x86)\javamail->1_4\javam ail-1.4\mail.jar

我从网上复制了一个程序,它将向我的 gmail 发送邮件

// 文件名 SendEmail.java

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

public class SendEmail
{
   public static void main(String [] args)
   {    
      // Recipient's email ID needs to be mentioned.
      String to = "icymadhu@gmail.com";

      // Sender's email ID needs to be mentioned
      String from = "madhuri1810p@gmail.com";

      // Assuming you are sending email from localhost
      String host = "localhost";

      // Get system properties
      Properties properties = System.getProperties();

      // Setup mail server
      properties.setProperty("mail.smtp.host", host);

      // Get the default Session object.
      Session session = Session.getDefaultInstance(properties);

      try{
         // Create a default MimeMessage object.
         MimeMessage message = new MimeMessage(session);

         // Set From: header field of the header.
         message.setFrom(new InternetAddress(from));

         // Set To: header field of the header.
         message.addRecipient(Message.RecipientType.TO,
                                  new InternetAddress(to));

         // Set Subject: header field
         message.setSubject("This is the Subject Line!");

         // Now set the actual message
         message.setText("This is actual message");

         // Send message
         Transport.send(message);
         System.out.println("Sent message successfully....");
      }catch (MessagingException mex) {
         mex.printStackTrace();
      }
   }
}

这是正确编译的,但它给了我一个运行时错误提示

无法找到或加载主类 SendEmail

我已经给出了正确的文件名,我确信我已经使用 java SendEmail 运行它

不仅这个程序,所有其他简单的java程序也给我同样的错误。

但是如果我删除了我的类路径变量,那么所有其他程序都可以正常工作。

【问题讨论】:

    标签: java api jakarta-mail


    【解决方案1】:

    你需要设置你的java文件编译后生成的类文件的路径。

    假设您的文件位于 D:\ 中,您可以将类路径设置为如下所示

    set CLASSPATH="D:\"
    

    这将帮助 java 找到该路径下存在的类文件。

    【讨论】:

    • 并开始将您的类放入包中...并停止使用带有空格的路径条目(如果只是为了清楚起见,过去这些路径无法识别)。
    猜你喜欢
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 2011-11-21
    • 1970-01-01
    • 1970-01-01
    • 2013-03-22
    • 1970-01-01
    • 2018-01-12
    相关资源
    最近更新 更多