在mac上安装和运行Java应用程序



我有一个java桌面应用程序,我试图为它创建一个Mac应用程序包。该应用程序由两个可运行的jar文件和几个文本和图像文件夹组成。第一个jar作为第二个jar的更新程序和启动程序,第二个jar是应用程序的主体。应用程序使用各种数据文件和图像,这些文件和图像在应用程序中通过相对路径名(例如:/images/bits/xyz.jpg)被引用。

在mac上,然而,在用Jar Bundler创建应用程序包后,我遇到了相对路径名工作的问题。我个人没有使用mac电脑的经验,需要有人帮助我理解在mac电脑上部署应用程序的标准方法。我注意到,我安装的其他应用程序都是以磁盘映像文件的形式出现的,打开后会显示将应用程序拖拽到应用程序文件夹中的指示。我正在尝试创建一个类似的安装包。提前感谢您的建议

磁盘映像中的拖放指令完全是转移注意力。一旦应用程序包被正确制作,无论它是在磁盘映像中还是只是压缩。

请注意,在mac上,可执行文件(无论是原生Cocoa还是Java)没有将其当前目录设置为可执行文件的路径。因此,首先需要获得jar文件的当前绝对路径,例如。对此,Stack Overflow上已经有一些问题了。

为了创建适当的Java Bundle和DMG文件,您可能需要一台Mac。下面是一个简单的例子:

http://www.centerkey.com/mac/java/

这里有一个关于如何使用mac特定的Swing特性的教程:http://java.sun.com/developer/technicalArticles/JavaLP/JavaToMac3/

作为Pyxis Software的开发人员,我想补充一点,我们已经开发了一个解决这个问题的应用程序。名为Pyxis Bundler的应用程序将自动将jar文件和可选库捆绑到一个标准的Mac应用程序中。

您可以选择从JAVAHOME目录嵌入JRE,或者选择一个特定的JRE。虽然这显然会扩大应用程序的大小,但用户不需要在他们的机器上预装JAVA来运行应用程序。

还有一个选项来创建一个现代的苹果图标图像(多尺寸的ICNS文件)。

我们将其设计为多年前随Xcode一起发布的Jar Bundler应用程序的替代品。

Pyxis Bundler将每个独特的应用程序设置保存到一个首选项文件中,所以当你更新Mac应用程序时,你只需要从下拉列表中选择应用程序名称来加载该应用程序以前使用的所有数据。然后只需增加版本号并单击Create按钮。

我应该补充一点,使用Pyxis Bundler必须使用合适的包名。

更多信息在这里:https://explorepyxis.com/shophttp://www.pyxis.ie/explore/index.php/software/pyxis-jar-bundler

您可以在这里查看如何命名包:https://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html

最新更新