LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 5022|回复: 12

使用alternative管理多个版本的JDK

[复制链接]
发表于 2007-6-10 22:42:02 | 显示全部楼层 |阅读模式
无论RHEL还是Fedora,默认都是安装的gcjlib和gcj,许多时候我们需要配置其它的JDK来满足我们的应用,本文以RHEL 5为例,介绍如何使用alternative来管理多个版本的JDK。其实理解原理后,我们也可以用alternative来管理多个版本的GCC、Tomcat诸如此类的。

本文将以Sun JDK 1.4, 1.5, 1.6为例来配置。Sun的JDK默认安装在/usr/java目录下,IBM的JDK默认安装在/opt目录下。(BEA的JDK JRockit也是一个不错的选择,另外还有开源的Blackdown JDK,可惜目前似乎停止了项目,只有1.4的JDK。)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2007-6-10 22:46:19 | 显示全部楼层
配置完后只需要执行
alternative --config java
alternative --config javac
即可选择你希望的JDK版本,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-10 22:57:38 | 显示全部楼层
alternative的原理是根据配置文件,修改一系列的链接来完成不同版本之间的“切换”的。感兴趣的话可以查看alternative的相关文档,本着实用的原则,这就不浪费口水了。

RHEL和Fedora的alternative配置文件存放在/var/lib/alternatives目录下。(SUSE的配置文件存放在/var/lib/rpm/alternatives目录下,Debain的配置文件好象是存放在/var/lib/dpkg/alternatives目录下,对不起,没有用过Debain。)

我们先来看看alternative配置文件的结构。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-10 23:07:50 | 显示全部楼层
真@!#$$%^扫兴,上传不了图片了,只好删掉几个原来的附件。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-10 23:13:49 | 显示全部楼层
第1行默认是auto,修改后会变成manual。第2行是链接的位置。
后面每2行是一组,先是工具链的名字,然后是链接的位置。
可以看出偶数行都是链接的位置,直到一个空行。

空行后是主链接的目标(也就是alternative管理的这个配置是什么),下一行是主链批的优先级(一般用版本号),以后的每1行都是链接的目标。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-10 23:15:59 | 显示全部楼层
再来看看修改后的配置文件,记得数字的版本号前一行是主链批的目标。后面是工具链的目标。数量要匹配。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-10 23:21:39 | 显示全部楼层
附件中是java和javac的alternative的配置文件,解开自己再开开。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-11 08:59:51 | 显示全部楼层
最后在配置一下环境变量。有很多方法,我一般喜欢改写/etc/profile,这里的例子是在bash下仅对当前的环境起作用的设置。
export JRE_HOME=/usr/lib/jvm/jre
export JAVA_HOME=/usr/lib/jvm/java

正确的使用alternative来管理多个版本的JDK,就不会出现使用Sun的JVM却用着gcjlib这样可能导致一些不可预测的错误。
回复 支持 反对

使用道具 举报

发表于 2007-9-2 20:56:11 | 显示全部楼层
alternative让我郁闷了很久阿~~~
回复 支持 反对

使用道具 举报

云和山的彼端 该用户已被删除
发表于 2007-10-31 20:45:28 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表