Linux启动Tomcat日志报错无法执行二进制文件

问题描述

学习项目部署过程中,在顺利安装了tomcat后,执行./startup.sh,显示tomcat已经执行成功,但是无法通过外部访问tomcat。

查看日志,发现无法执行Java这个文件

[root@localhost tomcat-10]# tail -f logs/catalina.out 
/usr/test/tomcat-10/bin/catalina.sh:行491: /opt/jdk/bin/java: 没有那个文件或目录
/usr/test/tomcat-10/bin/catalina.sh:行491: /opt/jdk/bin/java: 没有那个文件或目录
/usr/test/tomcat-10/bin/catalina.sh:行491: /opt/jdk/bin/java: 没有那个文件或目录
/usr/test/tomcat-10/bin/catalina.sh:行491: /opt/jdk/bin/java: 没有那个文件或目录
/usr/test/tomcat-10/bin/catalina.sh:行492: /opt/jdk/jre/bin/java: 无法执行二进制文件
/usr/test/tomcat-10/bin/catalina.sh:行492: /opt/jdk/jre/bin/java: 无法执行二进制文件
/usr/test/tomcat-10/bin/catalina.sh:行492: /opt/jdk/jre/bin/java: 无法执行二进制文件
/usr/test/tomcat-10/bin/catalina.sh:行492: /opt/jdk/jre/bin/java: 无法执行二进制文件
/usr/test/tomcat-10/bin/catalina.sh:行492: /opt/jdk/jre/bin/java: 无法执行二进制文件
/usr/test/tomcat-10/bin/catalina.sh:行492: /opt/jdk/jre/bin/java: 无法执行二进制文件


于是尝试查看Java版本,没问题

[root@localhost jdk]# java -version
java version "1.6.0_41"
OpenJDK Runtime Environment (IcedTea6 1.13.13) (rhel-1.13.13.1.el7_3-x86_64)
OpenJDK 64-Bit Server VM (build 23.41-b41, mixed mode)

问题原因

后来经各方询问和查询,发现是Linux是32位,而安装的Java版本是64位的

[root@localhost jdk]# uname -a
Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

解决方案

卸载之前的Java版本

[root@localhost jdk]# yum -y remove java-1.6.0-openjdk-1.6.0.41-1.13.13.1.el7_3.x86_64
已加载插件:fastestmirror, langpacks
正在解决依赖关系
--> 正在检查事务
---> 软件包 java-1.6.0-openjdk.x86_64.1.1.6.0.41-1.13.13.1.el7_3 将被 删除
--> 解决依赖关系完成

依赖关系解决

===================================================================================
 Package                架构       版本                            源         大小
===================================================================================
正在删除:
 java-1

你可能感兴趣的:(tomcat,linux,java)