cannot executebinary file Launching a JVM

本文解决了一个在32位Linux红帽系统上使用64位JDK部署应用程序时遇到的问题,详细步骤包括检查系统位数、下载适配的JDK版本、上传并替换原JDK,最终成功启动项目。

1.程序包部署服务器的时候:cannot executebinary file Launching a JVM

2.经查询此问题可能是权限,或者jdk和操作系统32/64位不一致导致

查询权限,已经赋权

3.查看服务器版本,部署时用的是linux红帽系统

执行命令:arch

显示:i686

服务器是32位系统,部署时用的64位jdk不兼容

4.从官网下载jdk1.863位的系统

https://www.oracle.com/cn/java/technologies/javase-jdk8-downloads.html

下载jdk-8u231-linux-i586.tar.gz

5.上传到服务器,解压,替换jdk,赋权,

6.启动项目,启动成功.

[root@yfw ~]# cd /etc/systemd/system [root@yfw system]# sudo cat > /opt/openfire/bin/start.sh << 'EOF' > #!/bin/bash > > export OPENFIRE_HOME="/opt/openfire" > export JAVA_HOME="/usr/lib/jvm/java-17-openjdk" > export JAVA="$JAVA_HOME/bin/java" > export LOG_FILE="$OPENFIRE_HOME/logs/nohup.out" > > # 构建 classpath > CP="" > for jar in "$OPENFIRE_HOME/lib"/*.jar; do > if [ -f "$jar" ]; then > CP="$CP:$jar" > fi > done > CP="${CP#:}" > > cd "$OPENFIRE_HOME" || { echo "Cannot access $OPENFIRE_HOME"; exit 1; } > > > "$LOG_FILE" > > echo "Using Java: $JAVA" > echo "Java Version:" > "$JAVA" -version 2>&1 | sed 's/^/ /' > > echo "Classpath: $CP" > echo "Starting OpenFire..." > > su -s /bin/sh -c " > export OPENFIRE_HOME=$OPENFIRE_HOME; > export JAVA_HOME=$JAVA_HOME; > export PATH=\$JAVA_HOME/bin:\$PATH; > cd \$OPENFIRE_HOME; > > echo 'DEBUG: User = \$(whoami)'; > echo 'DEBUG: Current dir = \$(pwd)'; > echo 'DEBUG: OPENFIRE_HOME = \$OPENFIRE_HOME'; > echo 'DEBUG: Java executable = \$(which java)'; > \$JAVA -version; > > echo 'DEBUG: Launching OpenFire...'; > exec \$JAVA \ > -server \ > -Xms64m \ > -Xmx512m \ > -DopenfireHome=\$OPENFIRE_HOME \ > -Dopenfire.lib.dir=\$OPENFIRE_HOME/lib \ > -Dlog4j.configurationFile=file://\$OPENFIRE_HOME/lib/log4j2.xml \ > -classpath \"\$CP\" \ > org.jivesoftware.openfire.starter.ServerStarter > " openfire >> "$LOG_FILE" 2>&1 & > > echo $! > "$OPENFIRE_HOME/logs/openfire.pid" > echo "OpenFire started (PID $!)" > echo "Check logs: tail -f $LOG_FILE" > EOF [root@yfw system]# ls /opt/openfire/lib/startup.jar /opt/openfire/lib/startup.jar [root@yfw system]# jar -tf /opt/openfire/lib/startup.jar | grep ServerStarter org/jivesoftware/openfire/starter/ServerStarter.class [root@yfw system]#
11-16
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值