文章目录

  • 一、问题描述
  • 二、解决步骤
    • 2.1 下载JDK
    • 2.2 修改环境变量
    • 2.3 修改IDEA的SDK
    • 2.4 设置 tomcat server
    • 2.5 修改 Maven 指定的编译版本
    • 成功解决!

一、问题描述

本人使用 idea 创建 web 工程后,运行 tomcat 服务器时出现报错:

Error: Could not create the Java Virtual Machine.Error: A fatal exception has occurred. Program will exit.Unrecognized option: --add-opens=java.base/java.lang=ALL-UNNAMEDDisconnected from server

并且 tomcat 出现错误信息:

Application Server was not connected before run configuration stop, reason: Unable to ping server at localhost:1099

二、解决步骤

本人尝试更换 JDK 版本,但并没有什么变化。最后发现是忘了修改 Project Structure... 中的 SDK
由于需要修改配置的地方较多,很容易漏掉一小步,下面整理了比较全面的需要修改的地方。

  • JDK 版本:jdk-11.0.19_windows-x64
  • tomcat 版本:10.1.12
  • Maven 版本:3.9.4

2.1 下载JDK

首先下载要更换的 JDK,官方网址:https://www.oracle.com/cn/java/technologies/javase/jdk11-archive-downloads.html
Windows 下载这个文件即可。

2.2 修改环境变量

  1. 系统变量中添加 JAVA_HOMEJRE_HOME
    • 变量名:JAVA_HOME
      变量值:JDK 的安装路径
    • 变量名:JRE_HOME
      变量值:JRE 的路径
      如下图所示:
  2. 系统变量的 Path 中添加两个新的值:
    • %JAVA_HOME%\bin
    • %JRE_HOME%\bin
  3. 用户变量的 Path 中添加两个新的值:
    • %JAVA_HOME%\bin
    • %JRE_HOME%\bin
      如下图所示:

2.3 修改IDEA的SDK

  1. 打开 File 下的 Project Structure...
  2. Project 下的 SDK 修改为对应的版本。

2.4 设置 tomcat server

  1. 编辑 tomcat 服务器
  2. JRE 选择 Default

2.5 修改 Maven 指定的编译版本

修改 Maven 指定的编译版本,由于本文使用 JDK11,故这里改为 11。

<properties><maven.compiler.source>11</maven.compiler.source><maven.compiler.target>11</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties>

成功解决!

完成以上步骤后,就可以成功解决问题了。