在Mac 10.8上执行一个jar文件

18

虽然这似乎是个非常显而易见的问题,但我在网上找不到答案。

当我创建了jar文件后,可以通过命令行成功运行它,方法是

java -jar filename.jar

然而,我希望这个文件更加用户友好,换句话说,可以通过双击运行。但不知何故,当我双击JAR文件时,Mac的JAR启动器(Jar\ Launcher.app)会打开,暂停一秒钟,然后关闭。感谢您的帮助。

附注:我已经通过命令行、BlueJ和Eclipse创建了JAR文件,但这些方法都没有解决问题。


你的JAR文件是否引用了资源文件,例如图片?也许当你双击它时,工作目录在不同的位置。此外,你可能想尝试打开/Applications/Utilities/Console——那里可能会有错误消息。 - martinez314
3个回答

14

我会创建一个 shell 脚本,将它包含在终端中:

#!/bin/bash
java -jar yourjarfile.jar
read -p 'Hit [Enter] to continue...'

我添加了暂停,但除非您的Java应用程序立即终止,否则不应该需要它(您可以在"java"行后停止shell脚本)。


嗨,Rogue。谢谢你的建议。现在我有一个临时文件(一个.command 文件,在双击时运行我的 jar 文件)。 - JFakult
很好,我相信你可以在.command中添加“read -p”以暂停它,这将让你看到运行时错误。 - Rogue

2

在OS X操作系统中有一个名为Jar Bundler的程序,它随Xcode开发者工具一起安装。你可以使用这个程序将.jar文件转换为本地的Mac OS X .app可执行文件。


我知道Jar Bundler应用程序,但我忘了提到它,但那并没有解决我的问题,还是谢谢。 - JFakult
看起来正是你想要的,但不用担心。 - Hunter McMillen
Jar Bundler早已被弃用。 - martinez314
是的,JAR打包程序和JAR启动器做了同样的事情,它们都会打开,暂停一秒钟然后退出。 - JFakult

1
你需要 Java WebStart,这是从链接中摘录的一段代码:Java Web Start 软件可以通过单击启动具有完整功能的应用程序。用户可以下载和启动应用程序,例如完整的电子表格程序或互联网聊天客户端,而无需经历冗长的安装过程。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接