Tomcat 9 配置指定 JDK 版本方法
将解压版 JDK 部署至 Tomcat 9 根目录(CATALINA_HOME)下,通过相对路径配置专属 JDK 环境,实现 Tomcat-JDK 一体化。核心是利用 Tomcat 官方推荐的 setenv 脚本配置 JAVA_HOME。
第一步:标准化目录结构
整理 Tomcat 9 目录,将解压版 JDK 放入 Tomcat 根目录下的 jdk 子文件夹。
apache-tomcat-9.0.XX/ # Tomcat 9 根目录(即 CATALINA_HOME)
├─ bin/ # Tomcat 启动/停止脚本目录
├─ conf/ # 配置文件
├─ webapps/ # 项目部署目录
├─ jdk/ # 新建的 JDK 存放目录
│ └─ jdk1.8.0_391/ # 解压后的 JDK 完整目录
├─ logs/ # 日志
└─ temp/ # 临时文件
注意:JDK 目录名可自定义,但后续配置需对应,禁止包含中文、空格或特殊字符。
第二步:核心配置
Tomcat 启动时会自动加载 bin 目录下的 setenv.bat(Windows)或 setenv.sh(Linux/Mac)。该文件默认不存在,需手动新建。
场景 1:Windows 系统
- 在
bin目录下新建文本文件,重命名为setenv.bat。 - 编辑文件,写入以下内容:
@echo off
:: 基于 CATALINA_HOME 配置相对路径的 JAVA_HOME
set "JAVA_HOME=%CATALINA_HOME%\jdk\jdk1.8.0_391"
:: 可选:设置 JVM 运行参数
set "JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m"
替换
jdk1.8.0_391为实际 JDK 目录名。
场景 2:Linux/Mac 系统
- 在
bin目录下新建setenv.sh文件:
touch "$CATALINA_HOME/bin/setenv.sh"
- 编辑
setenv.sh,写入以下内容:
#!/bin/sh
# 基于 CATALINA_HOME 配置相对路径的 JAVA_HOME
JAVA_HOME=/jdk/jdk1.8.0_391
JAVA_OPTS=

