我已经为windows开发了一个setup.exe,具有自动检测JRE版本,自动安装所需的JRE版本,Windows启动时自动启动等功能。我从jar文件中创建了这个exe文件(jar文件没有上面提到的稍后在将JAR转换为EXE时添加了功能。现在我想知道我是否能以某种方式将exe转换为DMG,APP或JAR,或者我只能在我的JAR文件中添加上述功能。)默认情况下,Mac附带Java版本5和我的应用程序需要最低Java版本6才能运行
答案 0 :(得分:4)
在Mac上分发Java应用程序的常规方法与在Windows上不同。您不需要本机二进制文件在Mac上运行Java应用程序,因为您可以将其捆绑到应用程序(.app)文件中。
JarBundler是Xcode Deveoper Tools的一部分,它可以帮助您将JAR文件插入到新的.app文件中。您还将在此阶段和主要课程中指定您的图标。
app文件实际上只是一个文件夹。您可以通过选项单击应用程序文件并在弹出菜单中选择“显示包内容”,将.app文件作为文件夹打开。有时您可能需要在应用程序中调整Info.plist文件,因为有很多选项。 Apple的开发者网站上有关于Info.plist文件的完整文档。
获得应用程序后,您可以使用PackageMaker将其捆绑到一个包中,这也是Xcode Developer Tools的一部分。
此外,您可以使用DiskUtility将软件包捆绑到磁盘映像(DMG)中,您可以在Utilities文件夹中找到它。
关于Java版本,在Snow Leopard之前,Java 6仅适用于Intel Mac。如果您需要Java 6,则需要要求他们拥有带有最新更新的Intel Mac或拥有Snow Leopard。或者,您可以将SoyLatte打包到您的应用程序中以替换本机Java运行时。您基本上是在使用您的应用程序分发32位版本的Java 6。
答案 1 :(得分:2)
Java 1.6并未针对所有mac发布。一个人没有它,你没有做任何事情。
至于创建dmg。在mac os x install cd中是一个名为developer tools的包。其中包括一个名为Jar Bundler的应用程序,它允许您将jar包装到apple的.app文件中(exe的用于mac)。对于dmg图像,您可以从命令行或从ant目标创建它。