Linux系统下Java环境变量的设置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统下Java环境变量的设置相关的知识,希望对你有一定的参考价值。
大家好,各位高手些,小弟前不久遇到一个很基础的问题,一直困惑了我很久,我安装的Linux系统是Fedora 8,我下载的jdk是jdk-6u21-linux-i586.bin ,我在当前用户(chenjy)的home之下新建了一个名为Software文件夹后,将jdk-6u21-linux-i586.bin 拷贝到了Software文件夹之下,在终端中进入Software文件夹下,运行sh jdk-6u21-linux-i586.bin安装jdk,安装完成后,在设置环境变量的时候,设置如下:
set JAVA_HOME=/home/chenjy/jdk1.6.0_21
export JAVA_HOME
set PATH=$JAVA_HOME/bin:$PATH
export PATH
set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH
进行如上设置之后,注销,重新登录
在终端运行java命令能正常显示提示信息,运行java -version也可以显示jdk版本信息,但运行javac时便不能正常提示,提示no command等
悬赏不多,愿请高手为菜鸟解惑,如需更多消息可加QQ:619233553
解开生成JDK目录,这里假设JDK安装在/usr/java/jdk1.5.0_10中:
代码:
sudo chmod 755 jdk1.5.0_10_XXXX.bin
sudo ./jdk1.5.0_10_XXXX.bin
sudo mkdir /usr/java
sudo mv jdk1.5.0_10/ /usr/java
代码:
sudo gedit /etc/profile
在这个文件的末尾追加:
代码:
export JAVA_HOME=/usr/java/jdk1.5.0_10/
#注意把新添加的JDK的bin目录追加在$PATH的最前面,这样当系统中安装有多个JDK版本时,程序会优先搜寻排在最前面的JDK版本。
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
保存/etc/profile之后,别忘了执行下面这个命令,使环境变量的更改马上起作用。
代码:
source /etc/profile
如果执行上面这个命令时报错,请仔细检查你在/etc/profile里新增的文本是不是有错。
最后检查环境变量更改是否生效:
代码:
java -version
-----
下面是另一种
1、下载需要的jdk( 我的是 jdk-6u2-linux-i586-rpm.bin),放在/home目录。
2、
#cd /home
#cp jdk-6u2-linux-i586-rpm.bin /usr/local
#cd /usr/local
(给所有用户添加可执行的权限)
#chmod +x jdk-6u2-linux-i586-rpm.bin
# ./jdk-6u2-linux-i586-rpm.bin
( 有可能会生成jdk-6u2-linux-i586-rpm文件,若是,则#chmod +x jdk-6u2-linux-i586-rpm, 然后 #rpm -ivh jdk-6u2-linux-i586-rpm. 若非,即直接进入安装程序)
出现安装协议,一直enter最后到y接受。
3、设置环境变量。
若是只是当前用户:
#vi /etc/profile
在最后加入 (与 xp中cmd设置一样)
#set java environment
JAVA_HOME = /usr/java/jdk1.6.0_02
CLASSPATH =.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
PATH = $JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PAHT
esc 回到命令模式,:wq 退出。
若是要在所有用户中使用:
vi /etc/profile.d/java.sh
在新的java.sh中输入上面情况中在末尾添加的内容:
保存退出,然后给java.sh分配权限:chmod 755 /etc/profile.d/java.sh
保存/etc/profile之后,别忘了执行下面这个命令,使环境变量的更改马上起作用。
代码:
source /etc/profile
如果执行上面这个命令时报错,请仔细检查你在/etc/profile里新增的文本是不是有错。
最后检查环境变量更改是否生效:
代码:
java -version
4、可在终端个查看环境变量设置情况:
#echo $JAVA_HOME
#echo $CLASSPATH
#echo $PATH
5、检查JDK 是否成功安装:
#java -version
#javac -? 参考技术A 在Linux/unix中设置环境变量
csh:在$HOME/.cshrc中添加一下行
setenv
JAVA_HOME/usr/java/jdk1.6.0
setenv
PATH
$JAVA_HOME/bin:$PATH
setenv
CLASSPATH
.
bash/ksh中:
在$HOME/.bash_profile中添加以下行:
JAVA_HOME=/home/tarena/jdk1.6.0_05
CLASSPATH=.:..:$JAVA_HOME/jre/lib/rt.jar(java类所在的目录或jar文件,在虚拟机中加载类时,虚拟机在CLASSPAHT中找到它)
PATH=$JAVA_HOME/bin:$PATH
(操作系统需要在PATH中找到它)
export
JAVA_HOME
CLASSPATH
PATH
source
.bash_profile
让全局环境变量.bash_profile生效 参考技术B 首先,你要确定你的java -version 的jdk版本信息是刚才安装的版本么?
如果不是的话,说明你的配置可能出现了如下错误:
然后检查下你的jdk安装路径是否为你刚才配置的路径?
我现在的估计是你的JAVA_HOME配置错了,你可以仔细检查下jdk的安装路径是否为home/chenjy/jdk1.6.0_21?导致你的PATH路径也配置错了,所以才有你的这些问题。 参考技术C 环境设置没错,只是在你的path环境下没有javac这个二进制码 参考技术D sh jdk-6u21-linux-i586.bin安装jdk,这个操作执行完,jdk只是解压到当前目录,也就是/home/chenjy/Software目录,你设置环境变量时设置的是/home/chenjy/jdk1.6.0_21,fedora本身自带jdk,你运行java -version可能运行的是自带的jdk,另外设置环境变量后不需要注销,执行source filename就行,比如你在~/.bash_profile下设置的,就执行source ~/.bash_profile。
楼主是不是没在配置文件里设置环境变量,如果没有的话,注销后设置的环境变量就失效了,你需要把环境变量写进配置文件里,而且不要写set,设置好后可以通过echo $JAVA_HOME来检查是否设置成功
虚拟机Linux java环境变量设置readhat系统
最近在学习Linux 期间找了好多资料才配置成功 现在把Linux的环境变量配置记录一下
系统环境VMware readhat5.5版本
jdk1.6 我使用的是jdk-6u45-linux-x64.bin 包
首先把jdk的bin包拷贝到虚拟机的系统上我放到了/home/wangs/目录下
使用 ./jdk-6u45-linux-x64.bin 命令解压bin包
在系统的 /etc/profile.d 目录下创建java.sh脚本touch java.sh;编辑脚本vi java.sh
export JAVA_HOME=/home/wangs/jdk-6u45-linux-x64 (这个路径配置的是解压后的文件夹的路径)
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
给java脚本赋执行权限 chmod 777 java.sh
执行环境变量脚本java.sh source java.sh (注意:该配置方式只可运行一次脚本运行多次会出现环境变量多次配置情况)
最后java -version查看是否配置成功
此方法配置成功后重启虚拟机后环境变量还会存在
以上是关于Linux系统下Java环境变量的设置的主要内容,如果未能解决你的问题,请参考以下文章