当前位置: 首页 > 知识库问答 >
问题:

使用cmd编译时不会检测到外部jar文件。?

公西苗宣
2023-03-14
public class mail {

private static String USER_NAME = "***";  // GMail user name (just the part before "@gmail.com")
private static String PASSWORD = "****"; // GMail password
private static String RECIPIENT = "****";
private static String RECIPIENT_A="****";


public static void main(String[] args) {
    String from = USER_NAME;
    String pass = PASSWORD;
    String[] to = { RECIPIENT,RECIPIENT_A }; // list of recipient email addresses
    String subject = "MailCheck";
    String body = "JAVAMAIL check";


    sendFromGMail(from, pass, to, subject, body);
}

private static void sendFromGMail(String from, String pass, String[] to, String subject, String body) {
    Properties props = System.getProperties();
    String host = "smtp.gmail.com";
    props.put("mail.smtp.starttls.enable", "true");
    props.put("mail.smtp.host", host);
    props.put("mail.smtp.user", from);
    props.put("mail.smtp.password", pass);
    props.put("mail.smtp.port", "587");
    props.put("mail.smtp.auth", "true");
    System.out.println("props setting over");

    Session session = Session.getInstance(props);
    MimeMessage message = new MimeMessage(session);

    try {
        message.setFrom(new InternetAddress(from));
        InternetAddress[] toAddress = new InternetAddress[to.length];

        // To get the array of addresses
        for( int i = 0; i < to.length; i++ ) {
            toAddress[i] = new InternetAddress(to[i]);
        }

        for( int i = 0; i < toAddress.length; i++) {
            message.addRecipient(Message.RecipientType.TO, toAddress[i]);   
        }
        System.out.println("array settings over");

        message.setSubject(subject);
        message.setText(body);
        Transport transport = session.getTransport("smtp");
        transport.connect(host, from, pass);
        transport.sendMessage(message, message.getAllRecipients());
        System.out.println("Mail Sending Over");
        transport.close();
    }
    catch (AddressException ae) {
        ae.printStackTrace();
    }
    catch (MessagingException me) {
        me.printStackTrace();
    }
}
C:\Workspace\MailCheck\mailCheck\src\com\atos>javac mail.java
mail.java:6: package javax.mail does not exist
import javax.mail.*;
^
mail.java:7: package javax.mail.internet does not exist
import javax.mail.internet.*;
^
mail.java:39: cannot find symbol
symbol  : class Session
location: class com.atos.mail
        Session session = Session.getInstance(props);
        ^
mail.java:39: cannot find symbol
symbol  : variable Session
location: class com.atos.mail
        Session session = Session.getInstance(props);
                          ^
mail.java:40: cannot find symbol
symbol  : class MimeMessage
location: class com.atos.mail
        MimeMessage message = new MimeMessage(session);
        ^
mail.java:40: cannot find symbol
symbol  : class MimeMessage
location: class com.atos.mail
        MimeMessage message = new MimeMessage(session);
                                  ^
mail.java:43: cannot find symbol
symbol  : class InternetAddress
location: class com.atos.mail
            message.setFrom(new InternetAddress(from));

共有1个答案

戚逸清
2023-03-14

使用类路径(-cp)

javac-cp%your_jar_location%mail.java

示例:

 类似资料:
  • 我有一个使用apache的简单程序。poi外部库以操作excel文件。我在windows环境中使用了eclipse,现在我必须用terminal在linux上编译和运行我的程序。我搜索了如何包含我需要的那些罐子,但最终出现了以下错误: 错误:无法找到或加载主类xlsToCsv。 我遵循的步骤如下: javac-cp/jars/poi-3.13-20150929。罐子:/jars/poi-ooxml

  • 我有一个使用编译时编织方面的项目,它依赖于两个外部JAR。我从https://github.com/eveoh/gradle-aspectj使用gradle-aspectj插件 按以下方式生成.分级: 我的项目基于intellij idea(16)+gradle(2.12)+spring boot(1.2.3) 任何帮助都将不胜感激。 ===============================

  • 我正在完成一个项目,我必须将它部署为一个jar文件,在eclipse中它工作得很好,我的项目依赖于两个库,这两个库也都依赖于dll文件。我已经将这些DLL的路径添加到每个外部JAR的本机库位置。然后,我使用eclipse可运行的jar文件导出向导将project导出为一个jar文件我在指定的位置得到了jar文件,它运行了,但是当我单击一个调用我得到的库之一的按钮时,我得到了java.lang.Un

  • 我在我的程序中使用了bluecove库 通过eclipse运行程序时,一切都很顺利。我现在正在尝试部署我的程序,在这篇文章之后,我使用了胖jar 当我运行jar文件(由fat jar创建)时,找不到库,并且由于这行代码local=LocalDevice,我得到了异常BlueCove库不可用。getLocalDevice() 。 在Fat-jar窗口中,我还尝试将添加到位置,并使用路径。 我还尝试将

  • 问题内容: 在构建战争文件时,我正在将一组罐子从某个位置复制到战争中的文件夹中。虽然文件确实会被复制,但是我认为它们已损坏,因为在战争之外被带出的jar的相同类文件会使用调试器打开,而从war文件中取出后不会打开。 这是我的战争pom.xml的一部分,我在其中复制了罐子 SomeSourceDirectory 有一些jar和其他文件结果是:myWar / somefolder / a.jar,但是