使用其他JAR包编译Java JAR文件

时间:2019-04-23 01:36:36

标签: java jar

对于特定的电子邮件发送功能,我有一个HelloWorld.java类,在javax.mail.jarjavax.activation.jar内部调用对象,如下所示:

//SENDEMAIL JAVA CLASS
import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeBodyPart;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;

public class HelloWorld{
    public HelloWorld(){
        setVersion(0);
    }
    public static void main(String[] args){
        System.out.println("Hello World!");
    }
    public void setVersion(int aVersion){
        version = aVersion;
    }
    public int getVersion(){
        return version;
    }
    private int version;
}

虽然在Eclipse中编译和导出jar文件的过程很好,但是我现在使用以下命令通过命令行对其进行编译:

>javac -target 1.7 -source 1.7 -bootclasspath "C:\Program Files\MATLAB\R2018a\sys\java\jre\win64\jre\lib\rt.jar" -cp "javax.activation.jar;javax.mail.jar" HelloWorld.java
>jar cfe "HelloWorld.jar" HelloWorld "HelloWorld.class"

在没有import-cp句子的情况下,这些命令行编译对于其他几个类也工作正常,但是当我尝试导入这些新的javax.mail.jarjavax.activation.jar时,我无法设置正确的-cp命令以及最终这些软件包的相对位置,以使编译工作保留所有其余结构。

我应该如何修复命令?

0 个答案:

没有答案