您现在的位置是:首页 >学无止境 >Springboot项目升级jdk11网站首页学无止境
Springboot项目升级jdk11
简介Springboot项目升级jdk11
一、本地升级jdk11
- 下载jdk11
- 安装
- 配置环境变量
- java -version查看版本,是否配置成功
参考:
Java jdk11 在Mac上的安装和配置以及JDK多个版本之间切换
一、pom文件修改
打包成可运行的springboot jar
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
打包成普通jar
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>
</plugins>
</build>
maven-compiler-plugin 与spring-boot-maven-plugin 区别:
- maven-compiler-plugin是jar包生成插件,提供了manifest的配置,生成jar包中一般存放的是.class文件已经resources目录下的东西,文件很小。
- spring-boot-maven-plugin主要目标是spring-boot的启动、停止、运行和repackage,对于打包来说那就是repackage,也就是说它实现的打包功能是重新打包,原始jar包还是由maven-jar-plugin生成的。
- 使用maven-compiler-plugin生成的jar不能直接通过java -jar运行,提示:没有主清单属性。
二、其它依赖版本调整
- lombok升级至1.18.4后的版本,如1.18.16
- maven-compiler-plugin升级至3.8.0后的版本,如3.8.1
- maven-surefire-plugin升级至3.0.0-M1后的版本,如3.0.0-M5
- JDK11,缺少JAXB API的jar包。JAXB API是java EE 的API,因此在java SE 11 中不再包含这个 Jar 包,新增以下四个依赖:c
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。