启动Tomcat
通过进入已经解压好的Tomcat目录中的bin中, 运行startup.sh
文件
这时终端显示
root@T470p:/home/lixiaoyi/soft/apache-tomcat-9.0.27/bin# startup.sh
Using CATALINA_BASE: /home/lixiaoyi/soft/apache-tomcat-9.0.27
Using CATALINA_HOME: /home/lixiaoyi/soft/apache-tomcat-9.0.27
Using CATALINA_TMPDIR: /home/lixiaoyi/soft/apache-tomcat-9.0.27/temp
Using JRE_HOME: /home/lixiaoyi/soft/jdk-11.0.4/jre
Using CLASSPATH: /home/lixiaoyi/soft/apache-tomcat-9.0.27/bin/bootstrap.jar:/home/lixiaoyi/soft/apache-tomcat-9.0.27/bin/tomcat-juli.jar
Tomcat started.
问题出现
启动之后, 打开网页输入127.0.0.1:8080
都连接不上服务器
查找问题
打开Tomcat目录下的logs中的catalinua.out日志文件查看错误信息
root@T470p:/home/lixiaoyi/soft/apache-tomcat-9.0.27# ls
bin conf lib logs README.md RUNNING.txt webapps
BUILDING.txt CONTRIBUTING.md LICENSE NOTICE RELEASE-NOTES temp work
root@T470p:/home/lixiaoyi/soft/apache-tomcat-9.0.27# cd logs/
root@T470p:/home/lixiaoyi/soft/apache-tomcat-9.0.27/logs# ls
catalina.out
root@T470p:/home/lixiaoyi/soft/apache-tomcat-9.0.27/logs# cat catalina.out
./catalina.sh: 1: eval: /home/lixiaoyi/soft/jdk-11.0.4/jre/bin/java: not found
可以发现, 该目录下的java找不到, 因为tomcat的启动需要依赖于java运行环境, 可以想到应该是配置文件出现了错误
解决问题
Java的配置文件 : vim /etc/profile
root@T470p:/home/lixiaoyi/soft/apache-tomcat-9.0.27/logs# cat /etc/profile
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "${PS1-}" ]; then
if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
# The file bash.bashrc already sets the default PS1.
# PS1='\h:\w\$ '
if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
fi
else
if [ "`id -u`" -eq 0 ]; then
PS1='# '
else
PS1='$ '
fi
fi
fi
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
export JAVA_HOME=/home/lixiaoyi/soft/jdk-11.0.4
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=.:${JAVA_HOME}/bin:$PATH
上面的JRE_HOME中的jre删除改为export JRE_HOME=${JAVA_HOME}
即可.
因为JDK11的目录中并没有jre目录, 因此,需要将jre删掉, 这样在重新启动tomcat时, 就会找到有效的Java了.
参考文章 :