Ubuntu搭建java环境时—E: 软件包 sun-java6-jre 没有可供安装的候选者 的解决办法

      正在读取软件包列表...完成

  正在分析软件包的依赖关系树

  正在读取状态信息... 完成

  现在没有可用的软件包 sun-java6-jre,但是它被其它的软件包引用了。

  这可能意味着这个缺失的软件包可能已被废弃,或者只能在其他发布源中找到

  E: 软件包 sun-java6-jre 没有可供安装的候选者


问题原因:Ubuntu10.10去掉了sun-java6-jre,sun-java6-jdk的源,所以如果是直接apt-get install 会有上面的提示.

  解决方法:具体操作如下:

 

  sudo apt-get install python-software-properties

 

  sudo add-apt-repository "deb http://archive.canonical.com/maverick/partner" (注:这里的maverick是你的release版本,ubuntu10.10是这个版,可以用命令lsb_release -c 查看) 或者:系统->系统管理->软件源->“其它软件”下添加一个  deb http://archive.canonical.com/ lucid partner

 

    sudo apt-get update 

 

  然后再重新安装jdk,sudo apt-get install sun-java6-jdk, 就可以正常安装了。这样安装完之后JAVA_HOME=/usr/lib/jvm/java-6-sun  。


--另外:

安装1.5
sudo apt-get install sun-java5-jdk

sudo update-alternatives --config java
sudo update-alternatives --config javac


安装1.6
sudo apt-get install sun-java6-jdk

sudo update-alternatives --config java
sudo update-alternatives --config javac


--环境变量的适配:

--sudo gedit /etc/profile

profile 或environment配置其中一个就可以
profile:

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "$PS1" ]; then
if [ "$BASH" ]; then
PS1='/u@/h:/w/$ '
if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
fi
else
if [ "`id -u`" -eq 0 ]; then
PS1='# '
else
PS1='$ '
fi
fi
fi
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export PATH=$PATH:/usr/lib/jvm/java-6-sun/bin
export CLASSPATH=./:/usr/lib/jvm/java-6-sun/lib/tools.jar:/usr/lib/jvm/java-6-sun/lib/dt.jar:/usr/lib/jvm/java-6-sun/lib/rt.jar:/usr/lib/jvm/java-6-sun/lib
umask 022

或者:

environment:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
CLASSPATH=./:/usr/lib/jvm/java-6-sun/lib
JAVA_HOME=/usr/lib/jvm/java-6-sun 

posted @ 2011-12-25 23:17  水向东流  阅读(9126)  评论(0编辑  收藏  举报