如果使用宝塔面板一键安装Tomcat,一般他还会默认给你安装一个JDK1.8,如果在本地使用高版本编译的class文件部署到服务器上,会报500错误(版本不兼容),解决方法:
卸载jdk1.8并安装高版本的jdk
获取当前JDK版本
rpm -qa | grep jdk
输出:
jdk1.8.0_121-1.8.0_121-fcs.x86_64
卸载当前JDK
rpm -e --nodeps jdk1.8.0_121-1.8.0_121-fcs.x86_64
安装JDK14.0.2
下载地址:https://download.oracle.com/otn-pub/java/jdk/14.0.2+12/205943a0976c4ed48cb16f1043c5c647/jdk-14.0.2_linux-x64_bin.tar.gz?AuthParam=1597292408_ce5d0894214a7f56cbb8456c4faadb30
随便解压到一个地方(我直接解压到/java/)
环境变量配置
编辑/etc/profile文件,在后面加上
#java setting
export JAVA_HOME=/java/jdk-14.0.2
# export JRE_HOME=${JAVA_HOME}/jre # 不要这行,要不然汤姆猫报错
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=${JAVA_HOME}/bin:$PATH
让配置生效
source /etc/profile
检查是否安装成功
java --version
生成jre目录
cd $JAVA_HOME
# 进入bin目录
cd bin
# 执行命令生成jre,会在本目录bin下生成jre文件夹
./jlink --module-path jmods --add-modules java.desktop --output jre
# 将bin目录下的jre移动到$JAVA_HOME目录
mv jre ../
Tomcat使用指定版本的JDK
当我卸载完jdk1.8,安装完高版本的jdk并配置了环境变量,按理说汤姆猫应该自动使用我环境变量里配置的jdk,但是我不知道他为什么会报找不到jdk的错误,所以我只能自己修改汤姆猫的配置文件,让它使用指定的JDK。
在Tomcat目录下面的bin/catalina.sh的前面加上
export JAVA_HOME=/java/jdk-14.0.2
export CATALINA_OPTS="-Djava.awt.headless=true"
还有一种说法是在catalina.sh和setclasspath.sh前面都加上(我试过了没什么用)
export JAVA_HOME=/java/jdk-14.0.2
export JRE_HOME=/java/jdk-14.0.2/jre
版权声明:本文为qq_45740349原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。