Ubuntu下双JDK配置

在Ubuntu下搭建工作环境,用apt-get的方式安装了jdk6。但是公司的业务大多针对企业,而企业中的各种服务器软件更新较慢,旧的系统大部分是was5,于是jdk6和jdk1.4的并存就比较重要了。

1、先安装jdk6:用新立得或者$sudoapt-getinstallsun-java6-jdk

2、配置环境变量

$sudogedit/etc/environment

在最后添加

CLASSPATH=.;/usr/lib/jvm/java-6-sun-1.6.0.13/lib

JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.13

CATALINA_HOME=/opt/tomcat6

$sudogedit/etc/profile

在最后添加

exportCATALINA_HOME=/opt/tomcat6

exportCLASSPATH=.;$JAVA_HOME/lib;$CATALINA_HOME/lib

exportPATH=$PATH;$CATALINA_HOME/bin

不需要tomcat的可以把它去掉。

3、安装jdk1.4,从官网下载j2sdk-1_4_2_19-linux-i586.bin

$sudocpj2sdk-1_4_2_19-linux-i586.bin/usr/lib/jvm/

$sudo./j2sdk-1_4_2_19-linux-i586.bin

然后是很长很长的许可,一直回车吧,当它问你yes/no的时候,输入yes回车。

这样在/usr/lib/jvm下就会解压出一个j2sdk1.4.2_19的目录,做一个链接以便今后使用

$sudoln-sj2sdk1.4.2_19java-1.4.2-sun

java-1.4.2-sun这个链接的名字随意

4、此时执行

$sudoupdate-alternatives--configjava

由于jdk6是apt-get安装,jdk4是手动安装,因此只有一个jdk6被认出来。若要把jdk4也加入,则进行如下操作:

$sudoupdate-alternatives--displayjava

显示:

java-状态为auto

链接目前指向/usr/lib/jvm/java-6-sun/jre/bin/java

/usr/lib/jvm/java-6-sun/jre/bin/java-优先级63

slavejava.1.gz:/usr/lib/jvm/java-6-sun/jre/man/man1/java.1.gz

可以看到其优先级是63,我需要再做个优先级60,比jdk6低的jdk4链接。优先级高低看你以哪个jdk为主,今后也可以根据--configjava来修改,没有关系

执行

$sudoupdate-alternatives--install/usr/bin/javajava/usr/lib/jvm/java-1.4.2-sun/jre/bin/java60--slave/usr/share/man/man1/java.1.gzjava.1.gz/usr/lib/jvm/java-1.4.2-sun/man/man1/java.1

建立好链接,再执行

$sudoupdate-alternatives--displayjava

java-状态为auto

链接目前指向/usr/lib/jvm/java-6-sun/jre/bin/java

/usr/lib/jvm/java-6-sun/jre/bin/java-优先级63

slavejava.1.gz:/usr/lib/jvm/java-6-sun/jre/man/man1/java.1.gz

/usr/lib/jvm/java-1.4.2-sun/jre/bin/java-优先级60

slavejava.1.gz:/usr/lib/jvm/java-1.4.2-sun/man/man1/java.1

目前“最佳”的版本为/usr/lib/jvm/java-6-sun/jre/bin/java。

可以看到jdk1.4已加入配置中,今后若要对优先级进行调整

执行:$sudoupdate-alertnatives--configjava即可

//今天碰到的新问题,我两个jdk都是用bin解压装的,这样直接添加update-alternatives即可,不要在profile和environment中添加JAVA_HOME,否则无法切换

相关推荐