Por*_*os3 3 java jar entry-point
我正在尝试使用以下命令创建 jar 文件:
jar -cef ./bin/a/MainClass formatter.jar ./bin/*
Run Code Online (Sandbox Code Playgroud)
其中 bin 包含两个带有类文件的文件夹(假设“./bin/a/”和“./bin/b/”)。
我可以很好地创建 jar,但我似乎无法让它正确执行。它运行时无需打印或执行任何操作。我认为它一定没有使用我提供的入口点。
MainClass 有一个简单的 main 方法:
public static void main(String[] args) {
System.out.println("HIT");
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?jar 是否需要与包含 main 的类创建在同一文件夹中?
根据要求编辑:jar -tf:
C:\Users\Jonathan\Documents\Workspace\JavaAutoFormatter>jar -tf formatter.jar
META-INF/
META-INF/MANIFEST.MF
bin/a/
bin/a/MainClass.class
bin/a/ParsedFile.class
bin/b/
bin/b/Token.class
bin/b/Tokenifier.class
Run Code Online (Sandbox Code Playgroud)
请参阅本教程。jar命令选项的参数e应该是类名,而不是路径名。此外,在指定要包含在 jar 中的类列表时,应注意引用文件,以便目录结构与包名称相匹配。否则类路径查找将会失败。尝试:
jar -cef a.MainClass formatter.jar -C bin .
Run Code Online (Sandbox Code Playgroud)