【发布时间】:2015-03-15 21:51:59
【问题描述】:
当我从 Eclipse 中“导出 Runnable Jar”并从 OSX 中的终端运行它时,应用程序名称(在菜单中可见)始终为 JarRsrcLoader。
我知道这是因为 MANIFEST.MF 将该类指定为启动类,然后它会加载我的主类。
如果我想将我的主类名称作为应用程序的名称,最好使用哪种方法?
【问题讨论】:
当我从 Eclipse 中“导出 Runnable Jar”并从 OSX 中的终端运行它时,应用程序名称(在菜单中可见)始终为 JarRsrcLoader。
我知道这是因为 MANIFEST.MF 将该类指定为启动类,然后它会加载我的主类。
如果我想将我的主类名称作为应用程序的名称,最好使用哪种方法?
【问题讨论】:
我在我的系统(Java 8、Mac OS X 10.8)上解决了这个问题。我通过关注this answer 解决了这个问题。具体来说,我可以使用以下命令从命令行运行 MyJar.jar:
java -Xdock:name="AppNameInMenu" -jar MyJar.jar
这样,菜单不再显示为 JarRsrcLoader,而是显示为 AppNameInMenu。
另外,在一个相关的问题上,这个 jar 可以转换为一个 .app 跟随this。但是,而不是:
"java -jar " & p & "/Contents/Java/MyJar.jar"
你可以使用:
"java -Xdock:name=\"AppNameInMenu\" -jar " & p & "/Contents/Java/MyJar.jar"
在使用 AppleScript 时使用引号中嵌入的引号时需要反斜杠(根据 this link)
【讨论】: