【问题标题】:Are there any issues if I compile with IBM JDK and run with Sun JRE如果我使用 IBM JDK 编译并使用 Sun JRE 运行,是否有任何问题
【发布时间】:2014-10-16 12:28:39
【问题描述】:

如果我要使用 IBM JDK 编译并使用 Sun JRE 运行,是否有任何问题 假设我们使用相同的 IBM 和 SUN 主要版本

【问题讨论】:

标签: java


【解决方案1】:

免责声明:我只关注您的问题:

如果我使用 IBM JDK 编译并使用 Sun JRE 运行,会有什么问题吗?

简短回答:不。

解释:

是的,“IBM 的 Java”和“Oracle 的 Java”之间存在重要区别,但在您的情况下,您只是生成字节码(编译),这是 JVM specification 中强烈指定的事情之一。因此,如果字节码被正确编译,那么它应该可以在任何 JVM 中运行。

CAVEAT #1:我假设您只使用 IBM 的编译器编译 java 代码,而不是编译和测试运行 IBM 的 java 可执行文件;如果是这样,那么是的,您会遇到问题,因为执行的行为会有所不同(一个 JVM 可能比另一个使用更多的内存,等等)有关此主题的更多信息,请遵循 @ForguesR 和 @Makoto 已经提供的链接在各自的 cmets 中。

CAVEAT #2:这并不意味着 IBM 的编译器必须生成与 Oracle 的编译器相同的字节码。这只是意味着两者都会生成正确的字节码以在任何 JVM 中执行。

CAVEAT #3:我还假设编译器和 JRE 都可以使用相同的库、依赖项等

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-08
    • 1970-01-01
    • 2017-08-03
    • 1970-01-01
    • 2019-06-02
    • 2019-11-16
    • 1970-01-01
    • 2020-05-14
    相关资源
    最近更新 更多