JDK8 升级至JDK19

优质博文IT-BLOG-CN

目前部分项目使用JDK8,部分项目使用JDK19因此,环境变量中还是保持JDK8,只需要下载JDK19免安装版本,通过配置IDEA就可以完成本地开发。

一、IDEA 环境设置

【1】通过快捷键CTRL + SHIFT + ALT + S或者File->Project Structure...设置SDKLanguage level,不存在JDK19时可通过Edit添加


【2】设置下方的Modules中的Sources模块和Dependencies模块


在这里插入图片描述
【3】设置下方的Platform Setting中的SDKs模块


【4】设置File->Settings...中的Build,Excepotion,Deployment下的Builder Tools->Maven->Runner模块
【5】设置File->Settings...中的Build,Excepotion,Deployment下的Compiler->Java Compiler模块
【6】如果使用了Tomcat点击Edit Configurations...后,设置JRE模块


在这里插入图片描述【7】设置完成后通过Maven插件进行编译,因为通过控制台执行mvn命令时使用的是本地环境变量中配置的JDK版本,而Maven插件使用的是IDEA中配置的JDK版本。

二、POM依赖修改

在项目父模块的pom.xml中添加如下plugin

<properties>
        <maven.compiler.plugin.version>3.10.1</maven.compiler.plugin.version>
        <java.version>19</java.version>
</properties>
<build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${maven.compiler.plugin.version}</version>
                    <configuration>
                        <source>${java.version}</source>
                        <target>${java.version}</target>
                        <compilerArgument>--enable-preview</compilerArgument>
                        <compilerVersion>${java.version}</compilerVersion>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.12.4</version>
                    <configuration>
                        <argLine>
                            --add-opens java.base/java.lang=ALL-UNNAMED
                            --add-opens java.base/java.lang.reflect=ALL-UNNAMED
                            --add-opens java.base/sun.reflect.annotation=ALL-UNNAMED
                            --add-opens java.base/java.math=ALL-UNNAMED
                            --add-opens java.base/java.util=ALL-UNNAMED
                            --add-opens java.base/sun.util.calendar=ALL-UNNAMED
                            --add-opens java.base/java.io=ALL-UNNAMED
                            --add-opens java.base/java.net=ALL-UNNAMED
                            --add-opens java.xml/com.sun.org.apache.xerces.internal.jaxp.datatype=ALL-UNNAMED
                        </argLine>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>3.3.1</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

后面遇到最多的就是项目包的冲突问题,依次解决就好

相关推荐

  1. JDK 从 1.8 升级JDK17 的问题汇总

    2024-02-19 03:04:03       12 阅读
  2. ubuntu22.04 安装jdk8,jdk11,jdk17,jdk21 并且便于切换

    2024-02-19 03:04:03       42 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-19 03:04:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-19 03:04:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-19 03:04:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-19 03:04:03       18 阅读

热门阅读

  1. python中怎么画对数坐标图

    2024-02-19 03:04:03       29 阅读
  2. openJudge | 中位数 C语言

    2024-02-19 03:04:03       32 阅读
  3. yolov8目标检测-onnx模型推理

    2024-02-19 03:04:03       24 阅读
  4. 什么是云渲染?云渲染的优势有哪些?

    2024-02-19 03:04:03       38 阅读
  5. C#面:简述装箱和拆箱

    2024-02-19 03:04:03       32 阅读
  6. 通用人工智能(Artificial General Intelligence,AGI)概述

    2024-02-19 03:04:03       31 阅读
  7. leetcode5_最长回文字串

    2024-02-19 03:04:03       35 阅读
  8. 【Webpack】处理图片资源

    2024-02-19 03:04:03       27 阅读
  9. MATLAB实现LSTM和RBF神经网络对比

    2024-02-19 03:04:03       30 阅读