Java Top.

使用Spring 5和Spring Boot 2开始,通过学习春天课程:

>>查看课程

1.概述

在这个快速的教程中,我们将展示如何在Maven中设置Java版本。

在继续前进之前,我们可以检查maven的默认jdk版本。mvn -v.命令将显示Maven运行的Java版本。

进一步阅读:

Maven Compiles指南

了解如何使用Maven配置文件,以便能够创建不同的构建配置。

Maven Compiler插件

了解如何使用Maven Compiler插件,用于编译Maven项目的源代码。

2.使用编译器插件

我们可以指定所需的Java版本编译器插件

2.1。编译器插件

第一个选项是在Compiler插件属性中设置版本:

  1.8   1.8  

maven编译器接受此命令 -目标和 -来源版本。如果我们想使用Java 8语言功能, -来源应该设置为1.8

此外,对于编译的类与JVM 1.8兼容 - -目标价值应该是1.8

它们两个的默认值是1.6版本。

或者,我们可以直接配置编译器插件:

<插件> <插件>  Maven-Compiler-Plugin    1.8   1.8    

Maven-Compiler-Plugin还具有额外的配置属性,允许我们对汇编过程进行更多控制-来源-目标版本。

2.2。Java 9及其超越

此外,从JDK 9开始,我们可以使用新的-释放命令行选项。这个新参数将自动配置编译器,以生成与给定平台版本的实现相链接的类文件。

默认情况下,-来源-目标选项不保证交叉编译。

这意味着我们无法在旧版本的平台上运行我们的应用程序。此外,要编译和运行旧的Java版本的程序,我们还需要指定-bootclasspath.选项。

正确地编译,新的-释放选项替换三个标志:-来源,—target和bootclasspath

在转换完我们的例子之后,我们可以为插件属性声明以下内容:

  7  

而对于Maven-Compiler-Plugin从3.6版本开始,这就是我们可以写的:

<插件> < groupId > org.apache.maven。 maven-compiler-plugin 3.8.0  7  

请注意,我们可以在一个新的java版本添加<释放>属性。在此示例中,我们将我们的应用程序编译为Java 7。

更重要的是,我们的机器不需要安装JDK 7。Java 9已包含用于将新语言功能与JDK 7链接的所有信息。

3.春天启动规范

Spring Boot应用程序指定内部的JDK版本属性标签in.pom.xml.文件。

首先,我们需要添加春天启动 - 起动器 - 父母作为我们项目的父母:

<父>  org.springframework.boot   Spring-Boot-Starter-Parent  

这个父POM允许我们配置默认的插件和多个属性,包括Java版本——默认情况下,Java版本是1.8

但是,我们可以通过指定来覆盖父级的默认版本java.version.属性:

<属性>  1.9  

通过设置java.version.属性,我们声明源和目标Java版本都等于1.9

最重要的是,我们应该记住,此属性是春季启动规范。此外,从Spring Boot 2.0开始,Java 8是最小版本。

这意味着我们无法为较旧的JDK版本使用或配置Spring Boot。

4。结论

此快速教程展示了在Maven项目中设置Java版本的可能方法。

以下是主外带的摘要:

  • 使用只能使用Spring Boot应用程序。
  • 对于简单的案例,maven.compiler.source.maven.compiler.target.属性应该是最合适的。
  • 最后,要更好地控制编译过程,请使用Maven-Compiler-Plugin配置设置。
Java底部

使用Spring 5和Spring Boot 2开始,通过学习春天课程:

>>查看课程
本文评论关闭!