bash: ./java: cannot execute binary file 问题

问题现象描述:
到orcal官网上下载了两个jdk:
(1)jdk-7u9-linux-i586.tar.gz   ------------>32位
(2)jdk-7u9-linux-x64.tar.gz     ------------>64位

没管那么多就先安装了jdk-7u9-linux-x64.tar.gz,具体安装步骤百度下吧,这里就不说了。安装后环境变量也配好后,但问题出现了:bash: ./java: cannot execute binary file,我在jdk_home/bin/目录下找到java文件,执行./java,就出现./java: cannot execute binary file问题,但我在前面加sudo ./java是能执行的,不知道为什么?现在也还不明白为什么前面加sudo它就能执行?

在网上找原因,发现是我装的ubutn系统是32位的,而我装的jdk是64位的,所出现上述问题,疑惑的是我下的两个.tar.gz文件我分不出那个是64位的,那个是32位的,唉!学艺不精啊!

[root@testserver usr]# java/jdk1.6.0_12/bin/java
-bash: java/jdk1.6.0_12/bin/java: cannot execute binary file
 
是64位版本移到32位上。

错误信息:
  ./java -version
bash: ./java: cannot execute binary file
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"bash: ./gdb: cannot execute binary file: Exec format error"错误通常是由于尝试在不兼容的操作系统或架构上执行二进制文件而引起的。这个错误可能有以下几个原因: 1. 文件不是可执行文件:请确保文件具有可执行权限,并且是一个可执行文件。可以使用`ls -l`命令来查看文件的权限和类型。 2. 文件是在不同的操作系统或架构上编译的:如果您的文件是在不同的操作系统或架构上编译的,可能会导致无法执行的错误。请确保您的文件与您的操作系统和架构兼容。 3. 缺少依赖项:如果您的文件依赖于其他库或程序,而这些依赖项在您的系统上不存在或不兼容,也可能导致无法执行的错误。请确保您的系统上安装了所有必需的依赖项。 解决这个问题的方法包括: 1. 检查文件的权限:确保文件具有可执行权限。可以使用`chmod +x`命令为文件添加可执行权限。 2. 检查文件的类型和架构:使用`file`命令检查文件的类型和架构。确保文件与您的操作系统和架构兼容。 3. 检查依赖项:如果文件依赖于其他库或程序,请确保这些依赖项在您的系统上存在并且与文件兼容。您可以使用`ldd`命令检查文件的依赖项。 4. 重新编译文件:如果文件是在不同的操作系统或架构上编译的,您可能需要重新编译文件以使其与您的系统兼容。 以下是一个示例,演示了如何解决"bash: ./gdb: cannot execute binary file: Exec format error"错误: ```shell # 检查文件的权限 chmod +x gdb # 检查文件的类型和架构 file gdb # 检查文件的依赖项 ldd gdb # 如果需要,重新编译文件 make gdb ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值