我已经编写了spring引导应用程序,基本上REST服务使用:带有spring引导的Maven项目,spring数据Jpa,spring web,Java版本11。java.version是用pom.xml编写的。我还使用HttpClient java 9或11(?(类来调用其他提供者的一些web服务。
我的电脑上安装了Java SE DK 11。这一切都运行得很好,但当我试图在安装了Java 8的Windows Server上运行构建的Maven包时,问题就出现了。
我甚至用一些小的沙箱应用程序测试了它,使用HttpClient,mvn打包,用java-jar packagename.jar运行它。它失败了,因为它不支持所需的类。
我的问题是,是否可以将我的应用程序编译并构建为一个可以在安装了Java 8的计算机上运行的jar文件?或者唯一的选择是重新编码部分代码,以满足旧的支持语法和类?
问候
首先下载Java 8 JDK链接以下载Java 8
将JAVA_HOME
设置为Java 8 JDK的路径,因为Maven将使用该值进行编译
检查系统mvn -v
和java -version
上的当前Java和maven。如果您的环境值中设置了正确的JDK,您可能需要打开一个新的终端窗口来查看更改
现在已经设置了Java 8 JDK,打开pom.xml
并编辑属性标记集版本从11到8
<properties>
<java.version>8</java.version>
</properties>
运行mvn clean
以删除预编译的文件和jar文件
然后运行mvn install package