Bruce Auyeung bio photo

Bruce Auyeung

横眉冷对千夫指,俯首甘为孺子牛!

新浪微博 腾讯微博 Github

在openSUSE 12.2上安装 Oracle(Sun) Java 1.7

opensuse正与大家都知道的那样,SUSE决定从openSUSE 12.1开始移除 Oracle Java。这是由于Oracle 移除了java的操作系统发行商授权导致的,而这早在Oracle 收购 Sun 公司时我们就已经预见到了。 所以,如果你依旧需要Oracle JDK,这篇文章将指导你如何安装它。 以安装32位JDK为例,步骤如下:

  1. 下载RPM软件包
    点击Oracle Java 下载页面,根据自己操作系统的位数选择对应的RPM包。我下载的是jdk-7u9-linux-i586.rpm
  2. 安装JDK
    可以直接在dolphin中“右键单击RPM包->打开方式->安装/删除软件”进行安装,也可以执行下述命令安装:
    sudo zypper in jdk-7u9-linux-i586.rpm
  3. 安装alternatives
    安装了java alternative 和javaplugin alternative后,你就可以很方便的在缺省java版本(Iced Tea)和Oracle Java之间切换
    sudo /usr/sbin/update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk1.7.0_09/bin/java" 40
    sudo /usr/sbin/update-alternatives --install "/usr/lib/browser-plugins/javaplugin.so" "javaplugin" "/usr/java/jdk1.7.0_09/jre/lib/i386/libnpjp2.so" 40
    	
    注1:update-alternatives --install对照详解表
    参数示例值备注
    link(第1个参数) /usr/bin/java 符号链接文件路径
    name(第2个参数) java alternative名称
    path(第3个参数) /usr/java/jdk1.7.0_01/bin/java 符号链接指向的实际文件路径
    priority(第4个参数) 40 优先级,用于自动模式中
    注2:如果你安装的jdk版本和我的不同(一般就是小版本号不同,比如_09),请酌情替换上述命令中的path(第3个参数)的值。可以通过下面的命令来获取对应的值:
    rpm -ql jdk|grep /bin/java
    rpm -ql jdk|grep libnpjp2.so
    	
  4. 配置alternatives
    首先配置java的,执行下述命令:
    sudo /usr/sbin/update-alternatives --config java
    选择和/usr/java/jdk1.7.0_09/bin/java对应的数字,我这里是1。 接着配置java浏览器插件的,执行下述命令:
    sudo /usr/sbin/update-alternatives --config javaplugin
    选择和/usr/java/jdk1.7.0_09/jre/lib/i386/libnpjp2.so对应的数字,我这里是1。
  5. 验证是否安装成功
    1. 先验证java。
      java -version
      如果该命令的输出信息中应该包含"1.7.0_09"和“HotSpot”字样,则说明Oracle Java 7 安装成功了。
    2. 再验证Java plugin。打开浏览器,在地址栏输入about:plugins,你可以看到和下面类似的内容: google chrome java plugin snapshot

      然后访问www.w3.org网站上的Java Applet测试页面,如果能出现Othello的游戏画面,说明你的java plugin也安装成功了。

      注3:在google chrome 22, firefox 16 上验证成功。