使用哪个供应商的 JDK 进行构建是否重要?

2022-09-04 08:09:25

如果我要部署到带有 WebSphere 6.1 (Java 1.5) 的服务器,我应该在我的构建框中使用 IBM 的 JDK 吗?还是Sun的JDK会编译成相同的二进制文件?

如果我应该使用IBM,我在哪里可以获得Windows x64版本?


答案 1

我会尽可能地让开发尽可能接近生产。Ibm和Sun的JDK当然都满足SDK认证,但它们绝不完全相同。它们的检测和内存管理至少略有不同。如果没有别的,JDK中的错误将有所不同,您的代码可能只会在一种情况下与另一种情况下绊倒。它也可能只发生在凌晨4点,当月亮满的时候,特别是当你有公司的时候。

我无法告诉你从哪里获得IBM的jdk,但是如果你的公司有websphere的许可证,你应该在IBM有一个联系人,为你提供一个指向该JDK的链接。

祝你好运,并始终尽可能减少差异。


答案 2

它不应该有任何区别。它可能不是完全相同的二进制文件,但100%兼容。我假设你正在使用外部库,比如log4j或hibernate或其他任何东西,而这些都不是使用IBM JDK构建的。

但是,JRE 中存在差异。例如,我记得当我使用反射列出类的方法或字段时,IBM JRE曾经以与Sun不同的顺序将它们提供给我。


推荐