linux下jdk的问题,卸载不干净

系统自带了jdk,但是我想自己安装高版本的jdk所以我想把系统自带的jdk卸载,使用yum remove java后发现还是可以使用javac,java,重启系统后也是这样,似乎没有卸干净,懒得管它,反正一个系统也可以有多个jdk,于是我还是照样安装自己的jdk,安装完之后也设了环境变量,可是当我在终端用的时候发现还是以前的jdk版本...系统环境设置如下,干脆把profile这个文件贴出来吧:
# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

# It's NOT good idea to change this file unless you know what you
# are doing. Much better way is to create custom.sh shell script in
# /etc/profile.d/ to make custom changes to environment. This will
# prevent need for merging in future updates.

pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
fi
}

# ksh workaround
if [ -z "$EUID" -a -x /usr/bin/id ]; then
EUID=`id -u`
UID=`id -ru`
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
else
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
pathmunge /sbin after
fi

if [ -x /usr/bin/id ]; then
USER="`id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi

HOSTNAME=`/bin/hostname 2>/dev/null`
HISTSIZE=1000
HISTCONTROL="ignoreboth"

#export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
if [ "$PS1" ]; then
. $i
else
. $i >/dev/null 2>&1
fi
fi
done

unset i
JAVA_HOME=/home/jdk1.6.0_13
PATH=$PATH:/home/jdk1.6.0_13/bin
CLASSPATH=.:/home/jdk1.6.0_13/jre/lib/rt.jar
export JAVA_HOME PATH CLASSPATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
unset pathmunge

还有网上说只要自己安装的jdk的环境变量设置在系统自带的jdk的之前就可以,那么我怎么知道系统设置的jdk环境变量在哪呢,我看不出来系统自带jdk的环境变量在哪,我该怎么才能让自己的jdk生效呢?高手请指教!
一楼正解,但是现在又有问题了,就是我自己安装eclipse后,新建项目却老是停在next那一步,怎么点next也没用了,也就是根本新建不了工程,只能叉掉,这是为什么阿?

linux下彻底卸载jdk的步骤:
1、卸载之前,先检查Java对安装情况
# update-alternatives --display java

2、(替换(version)为你的java具体版本.命令 “java -version”来得到,我的所1.7.0_15,那么你可以用命令 update-alternatives --remove "java" "/usr/lib/jvm/jdk1.7.0_15/bin/java"来删除)
# update-alternatives --remove "java" "/usr/lib/jvm/jdk<version>/bin/java"
# update-alternatives --remove "javac" "/usr/lib/jvm/jdk<version>/bin/javac"
# update-alternatives --remove "javaws" "/usr/lib/jvm/jdk<version>/bin/javaws"
3、确认这些符号链接(symlinks)是否都删除了
# java -version
# javac -version
# which javaws

4、后面俩命令必须要慎之又慎,不然可能毁掉你的系统.
# cd /usr/lib/jvm
# sudo rm -rf jdk<version>

5、更新删除配置
# update-alternatives --config java
# update-alternatives --config javac
# update-alternatives --config javaws
6、删除JAVA_HOME 这行环境变量。
7、完成
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-23
把下载的sun的jdk安装好(有rpm.bin和bin两种格式,直接运行按提示操作就行了,比如你安装在/usr/local/jdk1.6.0_13)

在.bashrc中加入

JAVA_HOME=/usr/local/jdk1.6.0_13
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME PATH CLASSPATH

所谓“只要自己安装的jdk的环境变量设置在系统自带的jdk的之前就可以”意思是说
PATH=$JAVA_HOME/bin:$PATH

如果PATH=$PATH:$JAVA_HOME/bin,那么因为系统会使用在PATH环境变量中搜到的第一个java或javac等命令,这时第一个仍是系统自带的java,而第一种写法,搜到的第一个就是你自己安装的java了本回答被提问者采纳
相似回答