Java从jar文件导入类

Java从jar文件导入类,java,file,class,jar,Java,File,Class,Jar,我编写了一个类,它从JavaMail导入一些类。 当应用程序运行时,它会自动下载文件并将其保存在名为depend的目录中。 但是我无法让它从我下载的Javamail jar导入类。 例如,我有: import javax.mail.Message; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.interne

我编写了一个类,它从JavaMail导入一些类。 当应用程序运行时,它会自动下载文件并将其保存在名为depend的目录中。 但是我无法让它从我下载的Javamail jar导入类。 例如,我有:

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

在文件的顶部,这些类位于(program/depend/javax.mail.jar的路径)

您必须确保
javamail.jar
文件位于
类路径上

您可以使用
-classpath
arg或通过设置
classpath
env变量来执行此操作

  • 下面是Oracle描述的
    java-classpath
    命令行参数
  • 下面介绍如何设置
    类路径
    环境变量

听起来您想通过网络加载类

这只能使用
类加载器来完成。这不是别的办法


它可以使用RMI完成,但在内部使用
类加载器。

您使用的是IDE吗?如果是这样,您是否将.jar链接到构建路径?我该怎么做?getClass().getResource(文件路径)不起作用。@user3055476也许这个问题有帮助:您的文件路径是关于设置您的程序正在使用的某个文件的路径。这对Eclipse或JVM没有帮助。您需要的类路径是关于希望JVM使用的类的位置。除非您正在制作插件,否则您不会在代码中使用它。