Tomcat 7 无法启动

Posted

技术标签:

【中文标题】Tomcat 7 无法启动【英文标题】:Tomcat 7 doesn´t start 【发布时间】:2016-01-21 20:29:08 【问题描述】:

我有一个 OpenSuse Linux,我安装了 Tomcat 7.0.52,但是当我运行 startup.sh 时,总是没问题。我在 localhost 中运行 nmap,但没有出现 tomcat 服务和端口。

Starting Nmap 5.21 ( http://nmap.org ) at 2016-01-21 18:09 UYST 
Nmap scan report for localhost (127.0.0.1) Host is up (0.0000020s latency). 
Not shown: 991 closed ports PORT      
STATE SERVICE 
22/tcp    open  
ssh 23/tcp    open  
telnet 25/tcp    open  
smtp 53/tcp    open  
domain 111/tcp   open  
rpcbind 631/tcp   open  
ipp 2049/tcp  open  
nfs 3306/tcp  open  
mysql 10000/tcp open  snet-sensor-mgmt

Nmap done: 1 IP address (1 host up) scanned in 0.08 seconds

当我运行 shutdown.sh 时,我收到以下消息:

Using CATALINA_BASE:   /opt/tomcat7/apache-tomcat-7.0.52
Using CATALINA_HOME:   /opt/tomcat7/apache-tomcat-7.0.52
Using CATALINA_TMPDIR: /opt/tomcat7/apache-tomcat-7.0.52/temp
Using JRE_HOME:        /opt/java/jdk1.8.0._65/jre
Using CLASSPATH:       /opt/tomcat7/apache-tomcat-7.0.52/bin/bootstrap.jar:/opt/tomcat7/apache-tomcat-7.0.52/bin/tomcat-juli.jar
/opt/tomcat7/apache-tomcat-7.0.52/bin/catalina.sh: línea 437: /opt/java/jdk1.8.0._65/jre/bin/java: No existe el fichero o el directorio

我的环境变量:

echo $JAVA_HOME
/opt/java/jdk1.8.0_65/

echo $JRE_HOME
/opt/java/jdk1.8.0._65/jre

怎么了?

【问题讨论】:

是什么让你觉得有些不对劲?你有防火墙运行吗?您是否以用户身份运行tomcat? nmap只扫描了1000个端口,你确定是扫描tomcat服务器端口吗? jdk1.8.0._65jdk1.8.0_65 我会使用 netstat -ln 列出打开的端口,以确保 - 正如已经指出的那样,nmap 仅列出知名服务。 【参考方案1】:

可能是您的环境变量定义中有错字吗?

echo $JAVA_HOME
/opt/java/jdk1.8.0_65/

echo $JRE_HOME
/opt/java/jdk1.8.0._65/jre

似乎正在使用后者,JRE_HOME,并导致后者出现错误情况:

/opt/java/jdk1.8.0._65/jre/bin/java

尝试像这样重新定义 JRE_HOME 环境变量:

export JRE_HOME='/opt/java/jdk1.8.0._65/jre/bin/java'

【讨论】:

以上是关于Tomcat 7 无法启动的主要内容,如果未能解决你的问题,请参考以下文章

Window无法启动本地计算机上的tomcat 7

Tomcat9无法启动

Xampp 1.8.1:Apache 无法在端口 8080 中启动,该端口正被 tomcat 7 使用

无法从 IntelliJ IDEA 12.1.4 Ultimate (Windows 7) 启动 Apache Tomcat 6

Windows下调整服务版Tomcat启动参数

tomcat无法正常启动的一个原因