Ubuntu中安装和配置 Java JDK,并卸载自带OpenJDK(以Ubuntu 14.04为例)
问题现象:
使用基于Ubuntu银河麒麟系统安装配置rocketMQ,在启动nameserver时执行了启动命令,没有任何进程反应,查看启动日志也没有任何输出,
但是执行java -version 命令时发现有运行自带的openJdk,其是否可用内心充满怀疑,决定自己配置jdk。
1.下载 jdk-8u161-linux-x64.tar.gz
cd home目录下新建文件夹: workFiles
如果如果不能上传到指定文件夹可能是文件夹权限不足,修改文件夹可执行权限,最简单的方法是赋予权限,即:
chmod 777 workFiles
(777)为最高权限
2.自解压安装jdk,我解压在了/home/workfiles下
tar -xzvf jdk-8u161-linux-x64.tar.gz
3.设置环境变量,编辑profile文件
vim/etc/profile
添加以下内容并保存退出
原本内容:
export PATH=$JAVA_HOME/bin:$ROCKETMQ_HOME/bin:$PATH
新加内容:
export JAVA_HOME=/home/workfiles/jdk1.8.0_161
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
如图:
4.执行以下命令,使配置生效
source /etc/ profile
5.卸载自带的openjdk的方法:
sudo apt-get remove openjdk*
6.设置默认jdk(假如有openjdk的话)
由于Ubuntu中可能会有默认的jdk,如openjdk。假如有openjdk的话,所以,为了使默认使用的是我们安装的jdk,还要进行如下工作(可以使用该命令安装其他命令,例如eclipse)。
执行代码:
sudo update-alternatives --install /usr/bin/java java /home/workfiles/jdk1.8.0_161/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /home/workfiles/jdk1.8.0_161/bin/javac 300
通过这一步将我们安装的jdk加入java选择单。
然后执行代码:
sudo update-alternatives --config java
sudo update-alternatives --config javac
通过这一步选择系统默认的jdk
7.查看Java版本,显示为我们自己设置的jdk
8.再次启动nameserver,提示启动成功。ubuntu自带openjdk确实不能用,还是自己动手的好。