Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决

简介: 如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。

Java - jdk

jdk17 linux 版本压缩包
https://www.oracle.com/cn/java/technologies/downloads/#jdk17-linux

  1. 通过xftp将jdk17的压缩包传输到/tmp下
    在这里插入图片描述

  2. 执行解压缩命令到/usr/local中

tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local
  1. 将刚刚解压出来的jdk17的目录重新命名为java
mv /usr/local/jdk-17.0.9/ /usr/local/java
  1. 编写环境变量配置文件(等同于windows下的系统环境变量配置 path 里面新增jdk的位置)
vim /etc/profile

在这里插入图片描述

  1. 更新环境变量配置
source /etc/profile
  1. 验证java环境是否配置成功
java -version

在这里插入图片描述

可能会出现的问题

bash: /usr/local/java/bin/java: cannot execute binary file: exec format error

  1. 先查看当前的linux操作系统是32位还是64位(安装对应的jdk)
uname -m

在这里插入图片描述

(显示 i686 (or 有时候会是i386) 说明操作系统是32位的,但是如果显示的是 x86_64,那就说明这个操作系统是64位的。)

发现并不是操作系统的事情,那么就应该是装错了版本。

  1. 安装下图第三个

在这里插入图片描述

tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local

mv /usr/local/jdk-17.0.9/ /usr/local/java

vim /etc/profile

# shift + G 定位到末尾进行添加
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH

# 更新配置文件
source /etc/profile

# 再次查看环境变量
java -version

小结:配置环境变量,首先linux版本的jdk要仔细看一下,不然的话,配置完后使用Java-version会找不到对应的指令集。

相关文章
|
JSON Java 关系型数据库
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
在Java中,使用mybatis-plus更新实体类对象到mysql,其中一个字段对应数据库中json数据类型,更新时报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
1779 4
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
|
Oracle Java 关系型数据库
Java(TM) Platform SE binary 已停止工作”的解决方法
Java(TM) Platform SE binary 已停止工作”的解决方法
2097 141
|
开发工具 数据安全/隐私保护
【Azure Developer】使用MSAL4J 与 ADAL4J 的SDK时候,遇见了类型冲突问题 "java.util.Collections$SingletonList cannot be cast to java.lang.String"
【Azure Developer】使用MSAL4J 与 ADAL4J 的SDK时候,遇见了类型冲突问题 "java.util.Collections$SingletonList cannot be cast to java.lang.String"
396 0
|
Java 开发工具
开发工具系类 之 Cannot determine path to ‘tools.jar‘ library for 17 (D:/Program Files/Java/jdk-17.0.9)
这篇文章讲述了作者在升级JDK至17版本后遇到IDEA无法识别`tools.jar`的问题,并提供了两种解决方法:升级IDEA版本或降低JDK版本,并提供了相关版本的IDEA兼容性信息。
开发工具系类 之 Cannot determine path to ‘tools.jar‘ library for 17 (D:/Program Files/Java/jdk-17.0.9)
|
SQL Shell API
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
实时计算 Flink版操作报错合集之任务提交后出现 "cannot run program "/bin/bash": error=1, 不允许操作" ,是什么原因
|
Oracle Java 关系型数据库
04. 【Java教程】在 Linux 上安装 Java
04. 【Java教程】在 Linux 上安装 Java
1129 0
|
Java Linux Shell
java jdk在Linux下安装与环境变量的配置
java jdk在Linux下安装与环境变量的配置
372 0
|
Oracle Java 关系型数据库
Java:Linux/Windows/macOS安装JDK
Java:Linux/Windows/macOS安装JDK
626 1
|
Java Linux 开发工具
Java - Linux 下安装 java
Java - Linux 下安装 java
347 0
Java - Linux 下安装 java
|
Oracle Java 关系型数据库
Java 技术篇-linux系统下安装jdk、设置java环境变量实例演示
Java 技术篇-linux系统下安装jdk、设置java环境变量实例演示
306 0
Java 技术篇-linux系统下安装jdk、设置java环境变量实例演示