Ubuntu安装Sun JDK及如何设置默认java JDK

http://blog.sina.com.cn/s/blog_437ff56b0100tfi5.html

  假设系统为Ubuntu 10.10 64位。
  先来看看当前的系统默认的java版本,及提供商。通过命令java -version

     kemix@kemix-VB10-64:~$ java -version
 

        java version"1.6.0_20"
     OpenJDK Runtime Environment (IcedTea6 1.9.9)(6b20-1.9.9-0ubuntu1~10.10.2)
     OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode)
 
  根据这个信息,我们可以知道,当前默认的java jdk是OpenJDK 1.6.0 64位VM。
  现在我们想要安装SunJDK,并且设置为默认的JDK,以便我们在任何地方,都能直接使用的是Sun的JDK,而不是OpenJDK。

-安装SunJDK
   首先,安装SunJDK,有的文章说可以通过Ubunttu的命令方式自动安装:
       
kemix@kemix-VB10-64:~$ sudo apt-get installsun-java6-jdk

   可是,在Ubuntu10.10 的32位及64位中,都无法直接通过该命令安装,也许是名字变了。
   我们采用的是手动安装的方法:
    先到sun官网,
www.sun.com 下载JDK。(sun已经被oracle收购了,因此会自动重定向到oracle官网),这里我们下载的是jdk-6u26-linux-x64.bin,因为这里先假设的是Ubuntu64位。应对你的需求,可以下对应的版本,比如32位的jdk-6u26-linux-i586.bin

    比如,安装到/opt目录中,先使用mv命令,将该bin文件移动到opt目录下:
       
kemix@kemix-VB10-64:~$ sudo mv Download/ jdk-6u26-linux-x64.bin /opt
     (可能要求输入用户名密码,因为用的是sudo命令)

    然后切换到/opt目录下,并通过chmod命令赋予该bin可执行权限:
      
kemix@kemix-VB10-64:/opt$ sudo chmod +x jdk-6u26-linux-x64.bin   
    
     执行安装:
     
  kemix@kemix-VB10-64:/opt$ sudo sh jdk-6u26-linux-x64.bin
    
  kemix@kemix-VB10-64:/opt$ sudo ./ jdk-6u26-linux-x64.bin    
   
  -设置JAVA_HOME环境变量:  
   

   如果设置全局的环境变量(针对所用用户):

      
kemix@kemix-VB10-64:/opt$ sudogedit /etc/ profile

      export JAVA_HOME=/opt/jdk1.6.0_26
      export PATH=$JAVA_HOME/bin: $PATH
      export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib

     把上面添加的,原封不动的copy到文件末尾(在umask022之后)。
     (PS,Linux的路径分割符是冒号“:”,大家知道Win下是分号“;”,此处切忌不要在分号前后留空白,鄙人曾经为了好看些,就人为的加入了些前后空格,结果可想而知,所有命令都没法用了,后果很严重啊!打开shell,还会报:bash:export: `/opt/jdk1.6.0_26/bin:': not a valid identifier)


    当然也可以基于安全考虑,只针对当前用户设置环境变量:
      kemix@kemix-VB10-64:~$ gedit.bashrc
     把上面三行export语句copy到文件末尾即可。
 

  - 设置默认JDK
    SUNJDK已经算安装完毕,可当我们用java -version时发现,仍旧是使用的老的OpenJDK。
 需要我们更改系统的默认JDK设置:
    
kemix@kemix-VB10-64:/opt$ sudoupdate-alternatives --install /usr/bin/java java/opt/jdk1.6.0_26/bin/java 300
    kemix@kemix-VB10-64:/opt$ sudoupdate-alternatives --install /usr/bin/javac javac/opt/jdk1.6.0_26/bin/javac 300
  update-alternatives: using/opt/jdk1.6.0_26/bin/javac to provide /usr/bin/javac (javac) inauto mode.

 接下来,我们先看看,系统中已经存在的JDK:
 
        kemix@kemix-VB10-64:/opt$ sudoupdate-alternatives --list java
        /opt/jdk1.6.0_26/bin/java
        /usr/lib/jvm/java-6-openjdk/jre/bin/java

    配置:
        kemix@kemix-VB10-64:/opt$ sudoupdate-alternatives --config java
There are 2 choices for thealternative java (providing /usr/bin/java).

 Selection   Path                                     Priority  Status
------------------------------------------------------------
*0           /usr/lib/jvm/java-6-openjdk/jre/bin/java  1061     auto mode
           /opt/jdk1.6.0_26/bin/java                        300      manual mode
           /usr/lib/jvm/java-6-openjdk/jre/bin/java  1061     manual mode

Press enter to keep thecurrent choice[*], or type selection number: 1
update-alternatives: using/opt/jdk1.6.0_26/bin/java to provide /usr/bin/java (java) in manualmode.

*表示当前的默认JDK,可以看出是OpenJDK,同时可以看到刚安装的SunJDK,序号为1,且之前设置的状态值300。
  这里需要你输入设置默认的序号,这里当然我们选1。

这里,你可以再次执行该命令来查看我们的设置是否ok:
      kemix@kemix-VB10-64:/opt$ sudoupdate-alternatives --config java
There are 2 choices for thealternative java (providing /usr/bin/java).

 Selection   Path                                     Priority  Status
------------------------------------------------------------
           /usr/lib/jvm/java-6-openjdk/jre/bin/java  1061     auto mode
*1           /opt/jdk1.6.0_26/bin/java                 300      manual mode
           /usr/lib/jvm/java-6-openjdk/jre/bin/java  1061     manual mode

Press enter to keep thecurrent choice[*], or type selection number: 1
   
  由于这里已经成功设置了SunJDK,所以,这里重复选择后,没有效果了。

-验证默认JDK
注销后重新登录,使用命令java -version
 
    kemix@kemix-VB10-64:~$ java -version
 javaversion "1.6.0_26"
Java(TM) SE RuntimeEnvironment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-BitServer VM (build 20.1-b02, mixed mode)

可以看到,已经是默认的Sun JDK了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值