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

Java导入外部jar文件

云航
2023-03-14

说我已经试过了。java在~/jar中/

public class TryJar {
    public static void hello() {
        System.out.println("Hello World!");
    }
}

然后我输入:

javac TryJar.java
jar cf TryJar.jar TryJar.class

我想将这个类导入到~/src/中的另一个源文件中:

public class TrySrc {
    public static void main(String[] args) {
        TryJar.hello();
    }
}

我尝试了两种方法:

1.

javac -cp ~/jar/TryJar.jar TrySrc.java

编译期间可以,但当我尝试运行它时,会出现错误:

java -cp .:~/jar/TryJar.jar TrySrc
Exception in thread "main" java.lang.NoClassDefFoundError: TryJar
    at TrySrc.main(TrySrc.java:3)
Caused by: java.lang.ClassNotFoundException: TryJar
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 1 more

2.

我尝试在我的. bashrc和. profile中包含以下命令(我没有.bash_profile或.bash_login):

export CLASSPATH=$CLASSPATH:~/jar/TryJar.jar

和:

source .bashrc
source .profile

但这一次,它仍然是错误的:

javac TrySrc.java
TrySrc.java:3: error: cannot find symbol
        TryJar.hello();
        ^
  symbol:   variable TryJar
  location: class TrySrc

我应该如何包含外部 jar 文件?

编辑:整个项目只包含两个目录:

~/jar/:
   TryJar.java
   TryJar.class
   TryJar.jar
~/src/:
   TrySrc.java

罐子的结构:

jar tf TryJar.jar 
META-INF/
META-INF/MANIFEST.MF
TryJar.class

我的系统是Ubuntu 12.04,java版本:

java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)

共有2个答案

锺霍英
2023-03-14

它在编译时失败。尝试先在TrySrc.java导入“TryJar”。

卢翔宇
2023-03-14

以你的方式 1:

尝试从

java -cp ~/jar/TryJar.jar TrySrc

java -cp .:~/jar/TryJar.jar TrySrc

在类路径中包含当前目录,以便能够加载 TrySrc

 类似资料:
  • 问题内容: 我编写了一个Java代码,该文件导入了一个外部jar文件。如何在命令行上编译和运行它? 提前致谢! 问题答案: 从命令行编译: 运行: 对于Windows,请用作路径分隔符(而不是)。

  • 我有一个Maven项目,在那里我导入了一个外部JAR(通过构建路径),它位于参考库文件夹下。我如何在我的系统中导入它。java类文件?我的意思是字面上的代码“导入??”。这个班是在com上的。实例演示包。我是否需要在某个地方添加依赖项(pom.xml)?

  • 但是我无法访问JAR中的包。而且它也不在外部库中。我有一些模型类,我试图做的是在一个不同的项目中使用那些。

  • 我最近下载了Android Studio来开发Android应用程序(我来自Eclipse),我在使用外部库和/或外部JAR文件时遇到了问题。注意:以下测试是在Android Studio中从头创建的一个新应用项目上进行的。 示例1:JAR导入。 > 从Google下载Admobs SDK的新副本。 将库jar复制到项目的/libs/文件夹中。 在project explorer中,右键单击新添加

  • 我希望解析JSON,为此我下载了java JSON。从这个URL下载jar文件。我在构建路径中添加了这个 右键单击项目 构建路径- 但是导入组织。json。JSONArray给了我一个错误。当我在org停下来的时候。它给了我一些不包括json的建议。 我应该怎么做才能成功导入json包?