时间:2015-01-27 17:07 来源: 我爱IT技术网 编辑:52微风
安装jdk的方式有很多种,主要分下面几种
a.安装官网上下载的jdk的执行文件,配置PATH环境变量来使用java
b.下载deb包安装,不过目前ubuntu官网已经不再提供oracle java的deb了。
第一种比较灵活,但是切换版本需要修改环境变量文件,不方便。
第二种比较简单,但是当你需要某个版本java的时候,可能会找不着合适的deb。
下面我说说第三种方式,通过为不同版的java建立别名,然后切换别名的方式可以轻松的在不同版本的java间切换,个人认为第三种方式但非常灵活,但稍微复杂一点。
下面举例说明吧,准备有三个jdk,分别是sunjdk1.6.0_31,openjdk1.6.0_24,和oraclejdkjdk1.7.0_07,
另外我又加了一个未安装java的别名none,通过切换别名可以在这四种jdk之间快速切换。
1.配置sun jdk1.6
1.1.下载
从官网下载tgz的压缩包(任何java1.6压缩包都没问题),并解压,假设解压后目录名是jdk1.6.0_31
1.2.把jdk复制到/usr/lib/jvm/jdk1.6.0_31下
jim@jim-laptop:~$ sudo cp /opt/development/j2ee/jdk/1.6.31 /usr/lib/jvm/jdk1.6.0_31 -r
1.3.建立符号链接
jim@jim-laptop:~$ sudo ln /usr/lib/jvm/jdk1.6.0_31/ /usr/lib/jvm/jdk -s
1.4.执行安装
执行下面的脚本(这脚本是从deb包中提取并修改后的)
jim@jim-laptop:~$ sudo ./jdk-installer configure jim@jim-laptop:~$
这步之后,大部分java执行文件的符号链接都已经建立起来了
1.5.建立别名
sudo update-alternatives --install /usr/lib/jvm/jdk jdk /usr/lib/jvm/jdk1.6.0_31 1000 jim@jim-laptop:~$需要注意的是,最后的1000是别名的序号,稍后针对jdk这个别名还有三个设置,这个数字不要重复。
2.安装openjdk1.6
和安装sun jdk1.6差不多,只是把路径变变,由于ubuntu默认是安装了openjdk1.6的,路径是/usr/lib/jvm/java-6-openjdk-amd64,所以只要建个别名就能用了。
sudo update-alternatives --install /usr/lib/jvm/jdk jdk /usr/lib/jvm/java-6-openjdk-amd64 1005 jim@jim-laptop:~$
3.安装java-7
3.1.下载
从官网下载tgz的压缩包,并解压,假设解压后目录名是jdk1.7.0_07
3.2.建立符号链接并执行安装
如果刚刚你配置过jdk1.6,执行过1.3和1.4的操作,这步可以省略。
3.3.把jdk复制到/usr/lib/jvm/jdk1.7.0_07下并建立别名
jim@jim-laptop:~$ sudo cp /opt/development/j2ee/jdk/1.7/jdk1.7.0_07 /usr/lib/jvm/jdk1.7.0_07 -r jim@jim-laptop:~$ sudo update-alternatives --install /usr/lib/jvm/jdk jdk /usr/lib/jvm/jdk1.7.0_07 1010 jim@jim-laptop:~$
4.配置无jdk
这个一般很少用到,一般用来做测试。
jim@jim-laptop:~$ sudo mkdir /usr/lib/jvm/none jim@jim-laptop:~$ sudo update-alternatives --install /usr/lib/jvm/jdk jdk /usr/lib/jvm/none 10205.切换jdk
无比的简单,有两种方式可以切换,可以使用update-alternatives命令切换也可以使用图形化的galternatives切换
安装galternatives的命令是
jim@jim-laptop:~$ sudo apt-get install galternatives图形化切换就不说了,一看就会,超简单,我重点说说命令切换方式
首先查看一下jdk别名的可选项
jim@jim-laptop:~$ sudo update-alternatives --list jdk [sudo] password for jim: /usr/lib/jvm/java-6-openjdk-amd64 /usr/lib/jvm/jdk1.6.0_31 /usr/lib/jvm/jdk1.7.0_07 /usr/lib/jvm/none jim@jim-laptop:~$ java -version java version "1.6.0_24" OpenJDK Runtime Environment (IcedTea6 1.11.4) (6b24-1.11.4-1ubuntu0.12.04.1) OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode) jim@jim-laptop:~$
从上面能看出来,目前jdk别名的可选项是4个,第一个就是当前默认的jdk,java版本可以证实这点。
下面看看如何切换
jim@jim-laptop:~$ sudo update-alternatives --config jdk 有 4 个候选项可用于替换 jdk (提供 /usr/lib/jvm/jdk)。 选择 路径 优先级 状态 ------------------------------------------------------------ 0 /usr/lib/jvm/none 1020 自动模式 * 1 /usr/lib/jvm/java-6-openjdk-amd64 1005 手动模式 2 /usr/lib/jvm/jdk1.6.0_31 1000 手动模式 3 /usr/lib/jvm/jdk1.7.0_07 1010 手动模式 4 /usr/lib/jvm/none 1020 手动模式 要维持当前值[*]请按回车键,或者键入选择的编号:3 update-alternatives: 使用 /usr/lib/jvm/jdk1.7.0_07 来提供 /usr/lib/jvm/jdk (jdk),于 手动模式 中。 jim@jim-laptop:~$我选择了3,也就是jdk1.7.0_07,再次看一下java版本
jim@jim-laptop:~$ java -version java version "1.7.0_07" Java(TM) SE Runtime Environment (build 1.7.0_07-b10) Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode) jim@jim-laptop:~$
可以看到java版本已经切换成oracle 1.7了。
卸载jdk配置
一般不用卸载,可以配置成无jdk就ok了,如果一定要卸载,可以使用jdk-uninstaller脚本
jim@jim-laptop:~$ sudo ./jdk-uninstaller关于path路径的配置
PATH路径需要指向的是/usr/lib/jvm/jdk,指向后就不用再改了,任何的java版本都用这一个路径。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
