调用java时“没有这样的文件或目录”

我正在尝试将Oracle JDK 7 32位重新安装到64位Ubuntu(以前安装了64位JDK)。 JDK目前​​在/usr/lib/jvm/jdk1.7.0 。 我援引

 sudo update-alternatives --remove "java" "/usr/lib/jvm/jdk1.7.0/bin/java" sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1 

然后:

 /usr/lib/jvm/jdk1.7.0/bin$ java bash: /usr/bin/java: No such file or directory 

为什么java不能被调用?

显示此消息是因为Ubuntu 64位中不存在某些32位库。 跑:

 apt-get install libc6-i386 

请参阅清单中的Java安装,但执行会生成“./java:No such file or directory”以获取更多详细信息

我帮他的朋友用他们的RiotBoard运行Linaro-Ubuntu将它设置为一个Minecraft服务器。 我们得到了同样的错误。 我发现的问题是Java引用了/lib/ld-linux-armhf.so.3 ,它在系统上不存在。 当你查看/lib ,唯一的加载文件是/lib/ld-linux.so.3所以我只是软链接它们并且它可以工作。 以下是我如何解决它以及我采取了哪些措施来解决它。

 root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# java -su: /usr/bin/java: No such file or directory root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# strings java /lib/ld-linux-armhf.so.3 qwwBI libpthread.so.0 _Jv_RegisterClasses libjli.so _ITM_deregisterTMCloneTable JLI_Launch __gmon_start__ _ITM_registerTMCloneTable libdl.so.2 libc.so.6 abort __libc_start_main lib.so $ORIGIN/../lib/arm/jli:$ORIGIN/../lib/arm SUNWprivate_1.1 GLIBC_2.4 1.8.0_06-b23 java root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# ls /lib/ld* /lib/ld-linux.so.3 root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# ln -s /lib/ld-linux.so.3 /lib/ld-linux-armhf.so.3 root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# ls /lib/ld* /lib/ld-linux-armhf.so.3 /lib/ld-linux.so.3 root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# java -version java version "1.8.0_06" Java(TM) SE Runtime Environment (build 1.8.0_06-b23) Java HotSpot(TM) Client VM (build 25.6-b23, mixed mode) root@linaro-ubuntu-desktop:/opt/java/jdk1.8.0_06/bin# 

你正在做的是试图执行二进制文件而不告诉它的路径,
执行java二进制文件在bin文件夹中尝试“./java”,否则包括其整个路径,安装时可以尝试这样: – http://www.devsniper.com/ubuntu-12-04-install-sun-jdk-6 -7 /