今天在服务器上装JDK1.5,费了不少力气,记录下来以供参考

服务器安装的操作系统为Red Hat 6.1(x86)

[123@123 bin]$ cat /etc/redhat-release
Red Hat Enterprise Linux Workstation release 6.1 (Santiago)
[123@123 ~]$ uname -op
x86_64 GNU/Linux

由于项目使用JDK1.5编译,故在安装JDK时首先选则的jdk-1_5_0_22-linux-i586.bin:

Do you agree to the above license terms? [yes or no]
yes
Unpacking...
Checksumming...
0
0
Extracting...
./jdk-1_5_0_15-linux-i586.bin: ./install.sfx.2991: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
mkdir: cannot create directory `jdk1.5.0_15/jre': No such file or directory
mkdir: cannot create directory `jdk1.5.0_15/jre/.systemPrefs': No such file or directory
touch: cannot touch `jdk1.5.0_15/jre/.systemPrefs/.system.lock': No such file or directory
chmod: cannot access `jdk1.5.0_15/jre/.systemPrefs/.system.lock': No such file or directory
touch: cannot touch `jdk1.5.0_15/jre/.systemPrefs/.systemRootModFile': No such file or directory
chmod: cannot access `jdk1.5.0_15/jre/.systemPrefs/.systemRootModFile': No such file or directory
./jdk-1_5_0_15-linux-i586.bin: line 680: cd: jdk1.5.0_15: No such file or directory Done.

搜索了一下/lib/ld-linux.so.2: bad ELF interpreter这个错误,很多地方提示安装glib(一个跨平台的、用c语言编写的库)即可解决,不过我没尝试过

剩余的选择不多,既然32位JDK1.5无法安装,尝试下64位JDK1.5

选择jdk-1_5_0_22-linux-amd64.bin再次尝试,安装成功,但是在运行时会提示找不到java.lang.Object

[123@123 bin]$ ./java -version
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

在jdk1.5.0_11/jre/lib目录下竟然没有rt.jar!

查了下有人自己上传rt.jar解决了这个问题,手头上没有64位的rt.jar,用32位的尝试了下,果然是不行的

[123@123 bin]$ ./java -version
Error occurred during initialization of VM
java.lang.UnsatisfiedLinkError: set

其实这是一个很明显的错误,安装包上明确写着amd64,即这是专门为amd64架构的处理器使用的

[123@123 ~]$ cat /proc/cpuinfo|grep 'model name'
model name      : Intel(R) Xeon(R) CPU           E5620  @ 2.40GHz

服务器上的英特尔Xeon E5620处理器使用的是Intel64(EM64T)架构

万般无奈下,考虑到JDK版本向下兼容,最终选择了1.6版本的JDK

比起JDK1.5,JDK1.6安装包的名称更清晰易懂(直接使用x64,不再区分amd64与intel64),选择安装jdk-6u45-linux-x64.bin,没有问题:

[123@123 web]$ ./jdk1.6.0_45/bin/java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)

当然如果选择jdk-6u45-linux-i586.bin应该也是没有问题的

特别需要注意的是Red Hat 6.1(x86)中自带的JDK为OpenJDK而非Java(TM)

[123@123 ~]$ java -version
java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.7) (rhel-1.39.1.9.7.el6-x86_64)
OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode)

这两个JDK还是有一定差异的,在Java(TM)环境下编译并能正常运行的程序在OpenJDK环境下不一定能正常运行

RedHat6.1(64bit)安装JDK的更多相关文章

  1. CentOS 64-bit下安装JDK和Tomcat并设置Tomcat开机启动操作步骤

    准备文件如下: 1.CentOS-6.4-x86_64-bin-DVD1.iso 2.jdk-7u67-linux-x64.rpm 3.apache-tomcat-7.0.55.tar.gz 安装步骤 ...

  2. linux下安装jdk

    第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 Java -version ,会有下面的信息: Javaversio ...

  3. Ubuntu下安装JDK以及相关配置

    1.查看系统位数,输入以下命令即可 getconf LONG_BIT 2.下载对应的JDK文件,我这里下载的是jdk-8u60-linux-64.tar.gz 3.创建目录作为JDK的安装目录,这里选 ...

  4. Ubuntu 安装 JDK 7

    直接下载jdk压缩包方式安装 分为下面5个步骤 1.官网下载JDK 2.解压缩,放到指定目录 3.配置环境变量 4.设置系统默认JDK 5. 测试jdk 1.官网下载JDK      地址: http ...

  5. Redhat Linux安装JDK 1.7

    本篇主要介绍在Redhat Linux(Red Hat Enterprise Linux Server release 5.7 (Tikanga))系统上安装JDK 1.7,其它Linux平台安装也大 ...

  6. 搭建centos测试环境:window安装xshell,WinSCP 。 centos安装jdk tomcat

    通过ssh实现远程访问linux系统: 由于xshell 连接centos,需要centos开启ssh服务.所以先启动SSH服务,没有ssh需要先安装. 1 . 查看SSH是否安装命令:rpm -qa ...

  7. Ubuntu server12.04安装JDK+Tomcat+mysql

    一.安装JDK 1.首先到官网上下载jdk-7u79-linux-x64.tar.gz. 2.将jdk-7u79-linux-x64.tar.gz拷贝到/usr/lib/jdk/目录下面,这里如果没有 ...

  8. 在linux上通过yum安装JDK

    完全转载自:https://my.oschina.net/andyfeng/blog/601291 这里完整粘贴一份留存 卸载centos自带的jdk 1.查看当前的jdk版本,并卸载 [root@l ...

  9. Linux下安装JDK并配置环境变量

    1. 查询是否默认安装有JDK [root@localhost bin]# java -version java version "1.6.0_22" OpenJDK Runtim ...

随机推荐

  1. BZOJ_1623:_[Usaco2008_Open]_Cow_Cars_奶牛飞车_(贪心)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1623 n头牛,第i头牛的速度是si,m条路(m<=n).如果第i头牛前面有k头牛,它的速 ...

  2. Nagios Core/Icinga 基于栈的缓冲区溢出漏洞

    漏洞名称: Nagios Core/Icinga 基于栈的缓冲区溢出漏洞 CNNVD编号: CNNVD-201402-484 发布时间: 2014-03-03 更新时间: 2014-03-03 危害等 ...

  3. tcxtreelist Properties的使用(TcxImageComboBoxProperties)

    TcxImageComboBoxProperties(MID_Comp.Properties).Items.Clear; 这样就可以使用属性了. if lstPaper.FocusedNode.Val ...

  4. HDU-1238 Substrings

    Substrings Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  5. [转]ASP.NET MVC 入门4、Controller与Action

    Controller是MVC中比较重要的一部分.几乎所有的业务逻辑都是在这里进行处理的,并且从Model中取出数据.在ASP.NET MVC Preview5中,将原来的Controller类一分为二 ...

  6. NSUserDefaults存数据相关的问题

    NSUserDefaults存储数据的类型是有限制的!NSUserDefaults里面只能存储property list objects.具体的内容请看下面的链接.特别的,对于NSDictionary ...

  7.  VS2012 C#调用C++ dll

    VS2012 C#调用C++ dll 调试方法:[dll工程和调用dll的exe工程在同一个解决方案中]dll工程,属性-配置属性-调试-把 命令 为 调用该dll的exe工程的bin\Debug\* ...

  8. [转]强大的vim配置文件,让编程更随意

    转自:http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配置主要有 ...

  9. OS X: Keyboard shortcuts

    Using keyboard shortcuts To use a keyboard shortcut, press a modifier key at the same time as a char ...

  10. 详细讲解Hadoop源码阅读工程(以hadoop-2.6.0-src.tar.gz和hadoop-2.6.0-cdh5.4.5-src.tar.gz为代表)

    首先,说的是,本人到现在为止,已经玩过.                   对于,这样的软件,博友,可以去看我博客的相关博文.在此,不一一赘述! Eclipse *版本 Eclipse *下载 Jd ...