java 类无法识别我要导入的 jar 文件

标签 java jar executable-jar

我将a.jar下载到工作空间/项目名称/lib中。我可以将其添加到构建路径中。但我遇到的问题是我无法将此 jar 文件导入到类中。 :(

假设我的 jar 文件是 a.jar。我将使用此 jar 文件中的 main 方法来执行一些操作。但我无法导入这个 a.jar 因为它无法识别 jar 文件的名称。

我怎样才能做到这一点?或者有更好的方法吗?

通常我使用命令行来运行 jar 文件。现在我想从代码中自动化它。如果可以的话请帮助我。

谢谢

最佳答案

jar 不包含 main 方法。它与 ZIP 存档没什么不同。

一个可执行 JAR 具有一个Main-Class(完整限定类名),其main 方法在META-INF 中定义/MANIFEST.MF:

Main-Class: my.company.MainClass

如果您想调用 Main-Classmain 方法,请在 Java 类路径上添加此 JAR 文件。在代码中添加 main 调用,例如:

...
import my.company
...
public void yourMethodWithMainCall() {
 // my.company.MainClass is defined as 'Main-Class' in META-INF/MANIFEST.MF of a.jar
 MainClass.main(...);
 ...
}

关于java 类无法识别我要导入的 jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31282695/

相关文章:

java - 在Java中匹配Excel的 float

java - 为 hashCode 和 equals 禁用 checkstyle

java - 小程序的 .jar 搞砸了?

Java 可执行应用程序

java - 如何使用 Maven 创建具有依赖项的可执行/可运行 JAR?

Java可执行文件

Java 正则表达式负前瞻

java - 如何在服务器上存储图像,以便可以将带有 id 的图像路径作为 map 存储在属性文件中,以便我们可以根据 id 获取图像

java - 运行时执行 (JAR) 找不到 Java CLASSPATH 和连接器 J

java - 你如何重新编译一个jar文件?