有没有办法我们可以将 2.2 运行时与应用程序本身一起复制/打包?
是的,请参阅OS X 10.7+ 支持的独立应用程序打包文档,包括 JavaFX 2.2+ 和 jre7u6+。
OS X 10.6 怎么样?
JavaFX 负责人在Oracle 论坛线程中引用了关于 Snow Leopard 支持和 JavaFX 2.2 的内容:
FWIW,实际上我们使用的一些来自 Lion 的 API 不在 Snow Leopard 上。此外,Apple 仅支持当前版本的 OS - 1(因此现在将是 Lion 和 Mountain Lion),并且对于部署,我们需要特殊的挂钩。当时的想法是,支持 Apple 自己不再支持的 Mac OS 版本是没有意义的。
JavaFX (2.0/2.1) 的一些早期开发人员构建确实在 Snow Leopard 上运行,但它们只是早期开发构建而不是生产就绪,另外,我认为这些构建的许可证不允许您在生产中使用它们代码。我认为这些早期的 2.0/2.1 开发版本不再由 Oracle 分发。
当 JavaFX 完全开源时,您也许可以努力将其反向移植到 Snow Leopard,但到那时可能就不值得了。
作为 hack,您可以尝试将 jre7u7+ 中捆绑的 JavaFX 运行时添加到 Apple Java6u35 中,看看您是否可以运行应用程序——但这将是一个完全不受支持的配置,可能会中断,并且还可能存在分发许可问题。