【发布时间】:2022-01-15 04:36:37
【问题描述】:
不确定为什么我会收到此错误,我觉得我错过了一些非常简单的东西。这是我在尝试关注this 从命令行创建 JAR 可执行文件时遇到的问题。这是我的简单测试文件:
JarExample.java:
public class JarExample {
public static void main(String[] args) {
}
}
清单.MF:
Manifest-Version: 1.0
Main-Class: JarExample
我运行以下命令来构建 JAR:
javac JarExample.java
jar cfm JarExample.jar MANIFEST.MF *.class
然而,当我运行java -jar JarExample.jar 时,我收到以下错误:
no main manifest attribute, in JarExample.jar
在 JAR 中达到峰值,存在正确的类文件,但存在以下自动生成的清单 META-INF/MANIFEST.MF:
Manifest-Version: 1.0
Created-By: 1.8.0_162 (Oracle Corporation)
那么我对jar 命令的使用在哪里不正确?为什么它无法识别我提供的清单文件?
谢谢!
【问题讨论】:
-
很难追溯您的问题,因为我们的系统中可能不存在任何问题的原因,或者我们可能会无意识地避免。您可以使用
v选项获得更多诊断输出。请注意,仅设置主类,您根本不需要处理清单。您可以使用jar cfe JarExample.jar JarExample *.class将 entry 点又名主类设置为JarExample。并使用jar vcfe JarExample.jar JarExample *.class获取 verbose 输出。 -
这个链接应该有帮助 -> link
标签: java manifest executable-jar