Apple不赞成使用Java,我们作为程序员的技术选择是什么?

时间:2010-10-26 05:57:40

标签: java oracle macos

  

可能重复:
  Need guidance on alternative JVMs for Apple OS X

就是这样,Apple可能不再自己生产JVM,也不再将其与OS X一起发售:

http://www.infoq.com/news/2010/10/apple-deprecates-java

我们在Windows,Linux和OS X上运行了一个巨大的Java应用程序(OS X是我们[丰富]用户群的重要组成部分),作为开发人员,我们的选择是什么?

在另一个OS X JVM(一个Oracle JVM)上运行我们的应用程序是否现实?

或者是要远离Java吗?如果是这样,那在技术上意味着什么?尝试使用一些自动移植工具(与Excelsior Jet for Windows不同,OS X有类似的东西吗?)?将整个应用程序(这将是巨大的)重写为Objective-C并维护两个不同的版本? (一个Java和一个Objective-C?)。

我们可能决定完全放弃OS X支持,至少只要Microsoft或Oracle不杀死Windows上的Java。

2 个答案:

答案 0 :(得分:4)

  

在另一个OS X JVM(一个Oracle JVM)上运行我们的应用程序是否现实?

这取决于您的应用程序的GUI密集程度,以及您/您的用户对于为您的应用程序的Mac版本提供快速GUI和Mac“用户体验”的程度。

但是,这可能是完全现实的。等一下,看看Oracle做了什么,同时尝试Soy Latte

  

或者是要远离Java吗?

取决于你需要多少努力才能燃烧。您可以为支持Mac用户付出多少努力。无论你怎么做,你最终都必须支持两个代码库。

  

我们可能决定完全放弃OS X支持......

这是现实的。

  

...至少只要Microsoft或Oracle不杀死Windows上的Java。

这是荒谬的FUD贩卖!

Microsoft无法做到这一点,因为他们无法控制Java代码库。 (如果他们试图通过后门手段来实现这一目标,那么他们就会因为违反反托拉斯法而在全世界范围内出现问题。)

出于多种原因,Oracle尝试这样做会很疯狂。此外,他们不能(理论上),因为OpenJDK for Windows代码库是开源的,还有其他现有的高质量Java实现(例如IBM)。

但是,由于我们正在进行FUD监控,因此更可能的情况(与Windows上的Java“世界末日”相比)是:

  1. Oracle与Apple达成协议,接管Apple对Java-on-Mac代码库的权利。
  2. Oracle通过向开发人员或最终用户销售Java-on-Mac许可证来“货币化他们的投资”。
  3. 对于甲骨文来说,这肯定是“性格”,他们有权利这样做。它不会让他们受到开源社区的欢迎,但有迹象表明他们并不真正关心它。

答案 1 :(得分:1)

这很大程度上取决于Apple是否会将其作为可选下载(如Rosetta)或完全保留。

如果是可选下载,则与Windows下的情况相同。

如果放弃,那么您必须考虑OS X是否是受支持的平台。

在任何情况下,您都可以强烈考虑支持OpenJDK项目,该项目目前是填补Apple在此处创建的空白的最佳选择。