一段时间以来,我们一直在使用 Java 开发基于 Windows 的应用程序,但现在我们想要制作一个 mac 端口,并且必须反转 Java 6 和 Java 5 的代码。有什么简单的方法可以做到这一点,而不是重新编码 Java 6 特定代码?我们希望使我们的代码保持最新。
7 回答
有几个图书馆可以帮助你。不幸的是,我自己没有尝试过,因为我从来没有遇到过这样的情况。
Apple 在最新版本的 OS X 上发布了 Java 6。您在 Java6 中专门使用了哪些 Java5 中没有的功能?
以我的经验,这很容易,以至于抱怨比做事需要更多的时间。1.6 中很少有东西不能用一分钟左右(字面意思)的工作进行反向移植。当您使用 1.5 进行尝试时,您看到了多少编译错误,为什么?
请记住,对于 1.6 (SwingWorker) 中有用的少数东西,有现成的、API 兼容的、占用空间小的反向移植。
如果您刚刚回到 Java 5,您知道您需要重写多少代码吗?如果您更改 IDE 中的 JDK 设置并尝试重新编译它,您应该可以很好地了解实际更改的大小。对于大多数开发人员来说,Java 6 并没有真正提供太多的新特性/API,但我猜你的项目可能在很大程度上依赖于添加的东西。
还有适用于 Mac OS X 的 Java 8。Java 的新版本将兼容,就像 Java 8 与 Java 5 代码兼容,所以 Java 6 代码也兼容。
您也许可以将额外的库从 Java 6 反向移植到 Java 5,但我想这样做会更麻烦。运行 Leopard 的带有 64 位处理器(所以不是最初的 Intel Mac Mini)的 Intel Mac 具有 Java 6,所以也许您可以只针对它们?