Install4j Java 最低版本似乎不起作用

Install4j Java minimum version seems not functional

我们正在使用 Install4j 7.0.6 并将 Java 最低版本设置为“10.0.1”。 我们将 Java 10.0.1 捆绑到媒体文件中。 当我们用 Java 9 VM 替换包含的 JVM 时,我们的应用程序仍然启动。 我们只是误解了 Java 最低版本的功能,还是我们使用了错误的版本格式,或者它在 Install4j 7.0.6 中被破坏了?

据我所知,最小 Java 版本参数的目的是告诉 Install4j 用来编译脚本的 Java 编译器 Java 目标是什么级别应该是。

该手册包含一条警告,即您不应包含低于目标级别的嵌入式 JRE,因为这可能会导致运行时错误。该警告的含义是 Install4j 不检查它。

the manual 是这样说的:

The design time JDK is used for the following purposes:

  • Code compilation: install4j uses a bundled eclipse compiler, so it does not need this functionality from a JDK. However it needs a runtime library against which scripts entered in the installer configuration are compiled. The version of that JDK should correspond to the minimum Java version for the project. If that minimum Java version is lower than the version of the design time JDK, runtime errors can occur if you accidentally use newer classes and method.

  • ...

Install4j 可能没有可靠的方法来检查您为嵌入提供的 JRE 的版本。无论如何,手册暗示这没有被检查。

无论最低版本如何,将始终使用捆绑的 JRE。最小值适用于按搜索顺序检查的已安装 JRE。