Between Runtime and compile time jdk version , 哪一个可以更大
Between Runtime and compile time jdk version , which one can be greater
java 程序或 jar 的运行时版本和编译时版本中,哪一个应该大于或等于另一个?
编辑:JRE 系统库的版本应该是多少?
理想情况下,您应该始终运行使用与相同或[=14]的运行时间环境来执行Java程序=]比用于构建它的更新。这是因为 Java 通常会在一定程度上确保向后兼容性。但是,不能保证向前兼容性。
例如,如果您使用 1.7 版构建了一个 Java 程序,那么它应该在 1.8 JRE 中 运行。但反之则不然,即 1.8 程序在较旧的 1.7 JRE 中可能 运行 不正确。
- Java 是向后兼容的,大多数时候您可以 运行 在较新的 运行 上使用较旧的 jdk 编译代码。
- 使用较新的 jdk 进行开发时,您可以指定要支持的目标 vm 版本。
所以这两种情况都是很有可能的:用较旧的 jdk 运行 编译的代码在较新的 运行 时间编译,用较新的 jdk 运行 编译的代码]在老运行时间。
- 因此,我的理解是您正在使用 jdk1.6 编译 java 应用程序,并在基于 jdk1.8 的运行时上编译 运行 相同的应用程序。 (比如这里也可以是jdk1.7)
- 一般来说,JDK/JRE 会被设计为向后兼容。
- 最好使用大于或等于编译版本的运行环境版本(JVM),反之则不然。
- JDK(编译版本)<= JDK(运行版本)- 正确
- JDK(编译版本)>=JDK(运行时版本)- 不正确
java 程序或 jar 的运行时版本和编译时版本中,哪一个应该大于或等于另一个? 编辑:JRE 系统库的版本应该是多少?
理想情况下,您应该始终运行使用与相同或[=14]的运行时间环境来执行Java程序=]比用于构建它的更新。这是因为 Java 通常会在一定程度上确保向后兼容性。但是,不能保证向前兼容性。
例如,如果您使用 1.7 版构建了一个 Java 程序,那么它应该在 1.8 JRE 中 运行。但反之则不然,即 1.8 程序在较旧的 1.7 JRE 中可能 运行 不正确。
- Java 是向后兼容的,大多数时候您可以 运行 在较新的 运行 上使用较旧的 jdk 编译代码。
- 使用较新的 jdk 进行开发时,您可以指定要支持的目标 vm 版本。
所以这两种情况都是很有可能的:用较旧的 jdk 运行 编译的代码在较新的 运行 时间编译,用较新的 jdk 运行 编译的代码]在老运行时间。
- 因此,我的理解是您正在使用 jdk1.6 编译 java 应用程序,并在基于 jdk1.8 的运行时上编译 运行 相同的应用程序。 (比如这里也可以是jdk1.7)
- 一般来说,JDK/JRE 会被设计为向后兼容。
- 最好使用大于或等于编译版本的运行环境版本(JVM),反之则不然。
- JDK(编译版本)<= JDK(运行版本)- 正确
- JDK(编译版本)>=JDK(运行时版本)- 不正确