java - 如何在 JAVA 中使用另一个 jar 中的类?

标签 java manifest.mf

我有一个小应用程序使用

import simple.http.Request;
import simple.http.Response;
import simple.http.load.BasicService;
import simple.http.serve.Context;
...

运行 jar 文件 (java -jar test2.jar) 时,我收到此错误

Exception in thread "main" java.lang.NoClassDefFoundError: simple/http/serve/ResourceEngine
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
    at java.lang.Class.getMethod0(Class.java:2685)
    at java.lang.Class.getMethod(Class.java:1620)
    ...

Google-ing 我发现该类 (simple.http.serve.ResourceEngine) 是 simple-2.7.jar 的一部分。

我已经像这样修改了 MANIFEST.MF 文件

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.0
Created-By: 1.7.0_17-b02 (Oracle Corporation)
Main-Class: com.App.Main
Class-Path: simple-2.7.jar

下载了simple-2.7.jar并复制到我的jar文件附近,但错误仍然存​​在

我是java中的NB。你能帮忙提供如何使 jar 工作的信息吗?

最佳答案

尝试使用此命令来运行 java 程序

java -jar test2.jar -cp simple-2.7.jar

希望 simple-2.7.jar 位于同一目录

关于java - 如何在 JAVA 中使用另一个 jar 中的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15976226/

相关文章:

java - Optional Of Nullable 当 map 返回 null 时执行 orElse

java - ListView 项目 onClickListener 和垃圾收集器

java - 在测试期间指定 Manifest.MF - Fat/Shaded JAR

Tomcat 无法从 list 文件中选择类路径

java - 部署War时Tomcat 6错误

java - 创建的 JAR 中的 list 存在 ClassNotFoundException 问题

java - j2me 应用程序不能在手机上运行

java - 解包数据 firestore 查询返回的数组类型

java - Acra 在 MainActivity 的 onCreate() 中无法正常工作?

java - 使用 gradle 显示第一个 OSGi 构建 - 从 ant 迁移到 Gradle