我想捆绑我的 .jar 应用程序以在 mac os 上自动运行打开。它没有 GUI,因此需要从终端运行才能工作,但我需要将其提供给不想使用终端的其他人。我该怎么做呢?我尝试了这里看到的应用程序生成器,但它只在活动监视器上显示了几分之一秒,然后就消失了。有关我的 jar 文件的更多信息:它是在 netbeans 中构建的,因此它确实具有通过 ant 构建 jar 所需的所有文件夹/xml。它需要在 netbeans 构建项目时将一些额外的库复制到 lib 文件夹中。第三,它需要将临时文件存储在一个名为 assets 的文件夹中,该文件夹与 jar 文件位于同一文件夹中。如果需要,我可以更改数字 3。
问问题
1034 次
1 回答
0
您的问题与在 Mac 上运行并没有太大关系 - 问题是您试图在没有控制台的情况下运行控制台应用程序。
这是在 GUI 窗口中提供控制台的一种方法示例,而不是在 shell(终端)中运行应用程序。
一旦你有了这个工作,你可以考虑将它包装在你指向的 Mac 特定的部署中。
为了便携性,您可能还需要考虑:
将你的类和你的 jar 依赖项中的所有类重新打包到一个大的“uber-jar”中——有几个工具可以做到这一点,包括 Maven 程序集插件
将临时文件存储在系统的默认临时文件位置(使用 File.createTempFile),而不是准确指定它们应该写入的位置。
于 2013-01-09T05:51:37.960 回答