当前位置: 技术问答>linux和unix
linux的jdk问题
来源: 互联网 发布时间:2016-06-17
本文导语: 我的情况:RHEL4,自带jdk1.4.2 1,我又安装了jdk1.6,在profile文件里设好环境变量。 此时终端里输java -version版本1.4,而javac -version显示版本1.6,java_home,path,classpath都显示正确。 2,于是我在图形界面的“软件添加...
我的情况:RHEL4,自带jdk1.4.2
1,我又安装了jdk1.6,在profile文件里设好环境变量。
此时终端里输java -version版本1.4,而javac -version显示版本1.6,java_home,path,classpath都显示正确。
2,于是我在图形界面的“软件添加和删除”里,删了jdk1.4,重启
此时终端里java命令就“command not found”了,javac命令依旧ok。进到jdk目录的bin目录,java命令依然没用,而名为java的可执行文件就在那儿放着。但在此目录下“./java”却有效。java和javac两个文件属性权限都一样。
3,于是就想把1.6卸了重装,就删了jdk1.6的文件夹。
现在安装1.6时总提示已经安装,不知道如何卸赶紧,用rpm命令卸掉话我找不到原先jdk1.6所在的包,无法卸。
不知道怎么办才能实现重新安装~~~
1,我又安装了jdk1.6,在profile文件里设好环境变量。
此时终端里输java -version版本1.4,而javac -version显示版本1.6,java_home,path,classpath都显示正确。
2,于是我在图形界面的“软件添加和删除”里,删了jdk1.4,重启
此时终端里java命令就“command not found”了,javac命令依旧ok。进到jdk目录的bin目录,java命令依然没用,而名为java的可执行文件就在那儿放着。但在此目录下“./java”却有效。java和javac两个文件属性权限都一样。
3,于是就想把1.6卸了重装,就删了jdk1.6的文件夹。
现在安装1.6时总提示已经安装,不知道如何卸赶紧,用rpm命令卸掉话我找不到原先jdk1.6所在的包,无法卸。
不知道怎么办才能实现重新安装~~~
|
linux下配置
(1)、安装JDK
从sun网站上直接下载JDK.
bin包 在linux上安装如下:
# chmod +x jdk-1_5_0_06-linux-i586.bin
# ./jdk-1_5_0_06-linux-i586.bin
(在当前目录下出现了一个 jdk-1_5_0_06-linux-i586.rpm
用"Install Packages" 安装,安装软件会将JDK自动安装到
/usr/java/jdk1.5.0_06目录下。)
此步完成后,会生成jdk-1_5_0_06-linux-i586.rpm的文件
给jdk-1_5_0_06-linux-i586.rpm赋执行权限
chmod +x jdk-1_5_0_06-linux-i586.rpm
安装jdk-1_5_0_06-linux-i586.rpm
rpm -ivh j2sdk-1_4_2_01-linux-i586-rpm
出现授权协议,按Enter键接受
使用默认的安装位置,在/usr/java/下,即/usr/java/jdk1.5.0_06
(2)、配置环境变量
1.修改用户环境变量
假设使用java的用户为hutest,编辑该用户的.bashrc文件进行环境变量设置。
修改用户环境变量,只对本用户起作用,不影响其它用户
# vi /home/hutest/.bashrc
在 .bashrc文件中加入:
export JAVA_HOME=/usr/java/jdk1.5.0_02
export PATH=:JAVA_HOME/bin:JAVA_HOME/jre/bin:PATH
export CLASSPATH=$CLASSPATH:JAVA_HOME/lib:JAVA_HOME/jre/lib
退出shell,重新登陆,环境生效
2.修改全局的环境变量
当然也可以通过更改/etc/profile来实现,不过不推荐这么做,因为这样的设置
将对所以用户的shell都生效,对系统安全会产生影响。就是在这个文件的最后加
上:
# vi /etc/profile
在该文件中加入:
export JAVA_HOME=/usr/java/jdk1.5.0_02
export CLASSPATH=$CLASSPATH:JAVA_HOME/lib:JAVA_HOME/jre/lib
export PATH=$PATH:JAVA_HOME/bin
一定要在CLASSPATH路径中加入$CLASSPATH:
在终端下执行 source /etc/profile 使配置生效
(3)查看jdk版本
1.可以用以下命令查看
显示JAVA版本 java -vesion
echo $JAVA_HOME
which java
echo $PATH
echo $CLASSPATH
如果java -version没有显示你的JDK的版本,请检查你的path的设置
(1)、安装JDK
从sun网站上直接下载JDK.
bin包 在linux上安装如下:
# chmod +x jdk-1_5_0_06-linux-i586.bin
# ./jdk-1_5_0_06-linux-i586.bin
(在当前目录下出现了一个 jdk-1_5_0_06-linux-i586.rpm
用"Install Packages" 安装,安装软件会将JDK自动安装到
/usr/java/jdk1.5.0_06目录下。)
此步完成后,会生成jdk-1_5_0_06-linux-i586.rpm的文件
给jdk-1_5_0_06-linux-i586.rpm赋执行权限
chmod +x jdk-1_5_0_06-linux-i586.rpm
安装jdk-1_5_0_06-linux-i586.rpm
rpm -ivh j2sdk-1_4_2_01-linux-i586-rpm
出现授权协议,按Enter键接受
使用默认的安装位置,在/usr/java/下,即/usr/java/jdk1.5.0_06
(2)、配置环境变量
1.修改用户环境变量
假设使用java的用户为hutest,编辑该用户的.bashrc文件进行环境变量设置。
修改用户环境变量,只对本用户起作用,不影响其它用户
# vi /home/hutest/.bashrc
在 .bashrc文件中加入:
export JAVA_HOME=/usr/java/jdk1.5.0_02
export PATH=:JAVA_HOME/bin:JAVA_HOME/jre/bin:PATH
export CLASSPATH=$CLASSPATH:JAVA_HOME/lib:JAVA_HOME/jre/lib
退出shell,重新登陆,环境生效
2.修改全局的环境变量
当然也可以通过更改/etc/profile来实现,不过不推荐这么做,因为这样的设置
将对所以用户的shell都生效,对系统安全会产生影响。就是在这个文件的最后加
上:
# vi /etc/profile
在该文件中加入:
export JAVA_HOME=/usr/java/jdk1.5.0_02
export CLASSPATH=$CLASSPATH:JAVA_HOME/lib:JAVA_HOME/jre/lib
export PATH=$PATH:JAVA_HOME/bin
一定要在CLASSPATH路径中加入$CLASSPATH:
在终端下执行 source /etc/profile 使配置生效
(3)查看jdk版本
1.可以用以下命令查看
显示JAVA版本 java -vesion
echo $JAVA_HOME
which java
echo $PATH
echo $CLASSPATH
如果java -version没有显示你的JDK的版本,请检查你的path的设置
|
java命令依然没用 这是因为你的PATH中没有java所在的目录。
必须用./java才能执行。
你说的1.6的版本删了也没用,我估计多半是环境变量的原因。
你在终端用
echo $JAVA_HOME
看看,如果有值,就去删了profile文件中的这个值。
还有其他跟java有关的,
export CLASSPATH=$CLASSPATH:JAVA_HOME/lib:JAVA_HOME/jre/lib
export PATH=$PATH:JAVA_HOME/bin
这样的也要删了。
必须用./java才能执行。
你说的1.6的版本删了也没用,我估计多半是环境变量的原因。
你在终端用
echo $JAVA_HOME
看看,如果有值,就去删了profile文件中的这个值。
还有其他跟java有关的,
export CLASSPATH=$CLASSPATH:JAVA_HOME/lib:JAVA_HOME/jre/lib
export PATH=$PATH:JAVA_HOME/bin
这样的也要删了。
|
还有,
~/.bashrc也看下
~/.bashrc也看下