我刚刚运行了下面的脚本,它将JDK提取并解压到正确的位置。 问题是,每个java命令(如复制到/ urs /斌 )给出了错误。 然后我通过cd进入JDK安装目录(我现在在JDK / bin中)并且键入: ./java -version和get: ./java: No such file or directory ,但是java在那里! JDK上的ls -l显示所有java客户端都在bin中 。
#!/bin/bash #Author: Yucca Nel http://thejarbar.org #Will restart system #Modify these variables as needed... tempWork=/tmp/work locBin=/usr/local/bin javaUsrLib=/usr/lib/jvm sudo mkdir -p $javaUsrLib mkdir -p $tempWork cd $tempWork #Update this line to reflect newer versions of JDK... wget http://download.oracle.com/otn-pub/java/jdk/7u2-b13/jdk-7u2-linux-i586.tar.gz #Extract the download tar -zxvf $tempWork/* #Move it to where it can be found... sudo mv -f $tempWork/jdk1.7* $javaUsrLib/ sudo ln -f -s $javaUsrLib/jdk1.7*/bin/* /usr/bin/ sudo rm -rf $tempWork #Update this line to reflect newer versions of JDK... export JAVA_HOME="$javaUsrLib/jdk1.7.0_02" if ! grep "JAVA_HOME=$javaUsrLib/jdk1.7.0_02" /etc/environment then echo "JAVA_HOME=$javaUsrLib/jdk1.7.0_02"| sudo tee -a /etc/environment fi sudo /sbin/reboot exit 0
运行ls -l /usr/lib/jvm/jdk1.7.0_02/bin/java给了我: yucca@yucca-VirtualBox:~$ -rwxr-xr-x 1 yucca yucca 5654 2011-11-17 22:38 /usr/lib/jvm/jdk1.7.0_02/bin/java
还运行: file /usr/lib/jvm/jdk1.7.0_02/bin ,输出为:
/usr/lib/jvm/jdk1.7.0_02/bin: directory
始终在顶部即使在显示全屏幕Flashvideo时仍保持在最高的窗口
从Runtime.getRuntime()。exec(command)运行的外部进程从哪里获取内存?
Apache Thrift Python-Java'拒绝连接'
AudioSystem.getMixerInfo()在Java / gentoo中没有任何内容
Cloudera:在HDFS例外中上传文件
如何使用Solr来索引整个C盘
使用tomcat在spring启动时读取控制台input
Java的println:Windows与Linux
用于Windows上的SVN Java绑定(JavaHL)的配对JAR和本机库二进制文件?
Java ftpclient应用程序不连接
您正在运行一个没有32位运行环境的64位系统。
假设ubuntu / debian的问题:
apt-get install libc6-i386
或者你应该将64位版本的软件包安装到这个虚拟机(这可能是最好的解决方案)。
错误消息来自运行时链接器/加载程序。 如果你做一个readelf -l java你会发现一行:
[Requesting program interpreter: /lib/ld-linux.so.2]
你对32位应用程序的期望是什么,你可能没有安装32位环境 – 请检查ls -l该program interpreter 。
和一个64位程序的例子看起来像(你的系统可能会有所不同):
[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
如果情况并非如此,并且你已经安装了32位libc,那么你可以尝试一个ldd java ,它会给出如下的列表:
linux-gate.so.1 => (0xf76ef000) libpthread.so.0 => /lib32/libpthread.so.0 (0xf76b3000) libjli.so => /home/bubba/java/jdk1.7.0_02/bin/./../jre/lib/i386/jli/libjli.so (0xf769f000) libdl.so.2 => /lib32/libdl.so.2 (0xf7699000) libc.so.6 => /lib32/libc.so.6 (0xf751f000) /lib/ld-linux.so.2 (0xf76f0000)
如果有线说not found那么你应该添加pagkages提供,但正如你可以从这个ldd看到的所有依赖是核心库,应该在几乎所有的Linux系统上存在。
我得到了
bash:/ usr / bin / java:没有这样的文件或目录
问题是我在x86_64 Debian上安装了Java的i586版本。
修复:我删除它并安装Java的x64版本。 现在一切正常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。