【发布时间】:2011-05-08 18:50:42
【问题描述】:
我是一名长期的 Java 人,并且知道在 Jar 内的 MANIFEST.MF 文件中引用主类来运行 JAR 的方法很简单:
java -jar theJar.jar
我使用它来启动 Fabric3 服务器(包含在其标准发行版中的 bin/server.jar 中)。我注意到,当我从分发 tarball 中解压缩它时,它被标记为可执行文件。一时兴起,我尝试了
./server.jar
从我的bash 命令行(Ubuntu 10.10 中的bash 4.1.5 版),你瞧,服务器启动就像我输入了普通的java -jar ... 命令一样。 JAR 的结构类似于普通的 JAR;我在上面做了一个head,前几个字节没有#! 命令,所以bash 不应该神奇地知道用它启动Java VM,对吧?或者这个版本的bash 增加了正确启动 JAR 的能力?有求知欲的人想知道...
【问题讨论】: