1. 程式人生 > >ubuntu下配置JDK的一些坑點

ubuntu下配置JDK的一些坑點

ubuntu下配置JDK的一些坑點

在centos下的JDK配置:

# 注意,在centos下的時候,是隻在/etc/profile下修改環境變數,增加JAVA_HOME之類的就可以了,不用修改/etc/enviornment

#set Java environment

export JAVA_HOME=/opt/java/  #你的java位置
export JRE_HOME=/opt/java/jre export PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/jre export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

在ubuntu下的話,要修改兩個地方:

/etc/enviornment和/etc/profile
如果僅僅在enviornment中修改的話,發現重啟就不可用了,嗯嗯嗯?為什麼?
必須要每次啟動之後source /etc/enviornment,所以在/etc/profile中配置很重要!

在/etc/enviornment中配置!

# 原來的PATH不要亂修改,不然就開不了機了,或者命令些找不到:
# 出現這種情況:由於/usr/bin 不在PATH 環境變數中,故無法找到該命令。
# 只在最後加一個$JAVA_HOME/bin
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin"

#export PATH=\$PATH:\${JAVA_HOME}/bin:\${JRE_HOME}/jre
export JAVA_HOME=/opt/java
export JRE_HOME=/opt/java/jre
export
CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

在/etc/profile中配置!

#set Java environment

export JAVA_HOME=/opt/java #你的java位置
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

寫在最後:

大家可能覺得,那Ubuntu也只在/etc/profile下配置不就好了嗎?幹嘛還要再在/etc/enviornment中配置?

其實我開始也覺得,但是因為後面遇到了一個問題,在kafka中,如果我只在/etc/profile修改的話,kafka的啟動shell中
無法取到$JAVA_HOME變數,即:/etc/profile中的系統變數雖然在外部你echo 什麼的都能輸出,但是shell中取不到,輸出不了啊!
只有enviornment中配置的,才能正常被shell指令碼們引用,很奇怪!