Java Manifest并未指定我提供的入口点

时间:2014-03-08 00:21:40

标签: java manifest entry-point

Manifest.txt位置:/ Dropbox / workspace / commonDenom / bin 班级位置:/ Dropbox / workspace / commonDenom / bin / commonDenom / 班级名称:

commonDenom.class
UserInterface.class

Manifest.txt内容(带有两个尾随空白行):

Main-Class:  commonDenom.UserInterface
(blank line)
(blank line)

然后在终端我执行以下操作:

cd /Dropbox/workspace/commonDenom/bin
jar cfm commondDenom.jar Mainfest.txt *
jar tf commonDenom.jar

输出如下:

META-INF/
META-INF/MANIFEST.MF
Manifest.txt
commonDenom/
commonDenom/.DS_Store
commonDenom/commonDenom.class
commonDenom/UserInterface.class

为什么commonDenom / UserInterface.class不是第一行,如果那是我在清单中指定为Main-Class的那一行? Manifest.txt的语法有问题吗?

1 个答案:

答案 0 :(得分:0)

  

为什么commonDenom / UserInterface.class不是第一行

因为它不是*遇到的或在-m选项中指定的第一个文件。

  

如果那是我在清单中指定为Main-Class的那个?

无关。 Main-Class属性不控制文件的顺序。当您使用java -jar.

时,它控制JVM用作入口点的内容
  

Manifest.txt的语法有问题吗?

没有

为什么你认为它应该是第一线?它不需要是第一行。 MANIFEST.MF告诉Java主类是什么,而不是JAR文件中的顺序。