Ubuntu11.10下,系统自动安装了openjdk,此时如果通过Ubuntu软件中心安装sun-java6-jre,会出现非常糟糕的问题:


如果你的处境跟我一样,那么请继续看下去:


为了彻底清楚ubuntu安装的sun-java6-jre祸根,需要使用force-remove命令强制卸载,这里我是根据问题复制粘帖google搜索到的帖子:http://hi.baidu.com/%B7%A2%B4%F8%BC%E4/blog/item/9049b9f70944b028720eece8.html(这里提到的是安装adobe出错,我想跟java卸载应该如出一辙)

rm -rf /var/lib/dpkg/info/sun-java6-jre

sudo dpkg --remove --force-remove-reinstreq sun-java6-jre


输入上述命令应该就把通过ubuntu软件中心安装的java6成功卸载了


由于库里没有sun-java6-jdk,需要自行安装,切忌再次使用ubuntu软件中心,这次应该在命令行中安装,我是通过终端命令下载jdk完成的,速度可能会比在oracle官网上下载慢一些。


sudo apt-get install sun-java6-jre

等两个小时,安装成功。


接下来就是配置java6了

1)如果你装了vi/vim

按下进行输入:

1. $ sudo vi /etc/environment 
2. PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/u 
3. sr/lib/jvm/java-6-sun/bin" 
4. CLASSPATH="/usr/lib/jvm/java-6-sun/lib" 
5. JAVA_HOME="/usr/lib/jvm/java-6-sun"

注意相应的安装java7或者在oracle上安装linux j6u等自动调整自己的环境变量路径


2)没有安装vi


sudo gedit /etc/profile


然后添加:


#set java environment  





1. PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/u 
2. sr/lib/jvm/java-6-sun/bin" 
3. CLASSPATH="/usr/lib/jvm/java-6-sun/lib" 
4. JAVA_HOME="/usr/lib/jvm/java-6-sun"


配置完成,然后就是要告诉系统,我们使用的sun的JDK,www.linuxidc.com而非OpenJDK了:

$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-6-sun/bin/java 300

$ sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-6-sun/bin/javac 300

$ sudo update-alternatives --config java

中间可能会提示两个警告,忽略之


由于ubuntu中可能会有默认的JDK,如openjdk,所以,为了将我们安装的JDK设置为默认JDK版本,还要进行如下工作。


sudo update-alternatives --config java  

1. 有 3 个候选项可用于替换 java (提供 /usr/bin/java)。  
2.   
3.   
4.   选择       路径                                    优先级  状态  
5. ------------------------------------------------------------  
6. * 0            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      自动模式  
7.   1            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      手动模式  
8.   2            /usr/lib/jvm/java-6-sun/jre/bin/java       63        手动模式  
9.   3            /usr/lib/jvm/java-7-sun/bin/java           300       手动模式  
10.   
11.   
12. 要维持当前值[*]请按回车键,或者键入选择的编号:3  
13. update-alternatives: 使用 /usr/lib/jvm/java-7-sun/bin/java 来提供 /usr/bin/java (java),于 手动模式 中。  

键入:java -version
1. ~$ java -version  
2. java version "1.6.0"  
3. Java(TM) SE Runtime Environment (build 1.6.0-b147)  
4. Java HotSpot(TM) Server VM (build 21.0-b17, mixed mode)

一天时间,终于大功告成!