如何在 java 8 或更高版本编译的 java 7 上运行 Jar

ade*_*ngh 4 java jar java-7 java-8

我使用 java 8 创建了一个 Windows 应用程序。但是我的客户在他的机器上使用 java 7 并且无法在机器上升级 java。

因此,当我在 java 8 中编译的 java7 上运行 jar 时,它会出错,所以我可以将 jar 兼容转换为较低版本的 java

小智 5

Java 7 与 Java 8 向前兼容。可以编译 Java 8,使其在 Java 7 VM(使用 -source 7 -target 7)上运行,但您不能使用任何较新的 API。只需使用 JAVA 7 编译,您就可以开始使用了,只要确保您没有使用 Java 8 的新功能,例如 lamda


Ami*_*era 5

您无法更改已编译 jar 的 Java 版本。你手头有2个选择。

  1. 使用 Java-7 编译源代码。

  2. 使用 Java-8 编译源代码,但当目标 vm 版本为 java-7 时使用以下命令。

javac "Your java classes" -source 1.8 -target 1.7
Run Code Online (Sandbox Code Playgroud)