描述:在Ubuntu16.04中配置jdk1.8
1. 下载jdk
下载地址:Java SE Development Kit 8 - Downloads - jdk8u301 (oracle.com)
选择版本为:jdk-8u301-linux-x64.tar.gz
jdk-版本号-操作系统名-cpu架构.文件扩展名
CPU架构区别
【CPU】关于x86、x86_64/x64、amd64和arm64/aarch64 - 简书 (jianshu.com)
tar.gz和rpm的关系
rpm(redhat package manager) | tar.gz | |
---|---|---|
区别 | 由redhat公司开发 | 由GNU开发 |
无需解压缩,直接安装 | 先解压缩,再安装 | |
相当于windows中的.exe 文件 | tar 是一种压缩文件的格式 | |
绑定到某种CPU或者发行版中 | 通用 |
2. 解压
- 将jdk压缩包移至
/usr/local/java
文件夹下cd /usr/local sudo mkdir java cp /usr/下载/jdk-8u301-linux-x64.tar.gz /usr/local/java
- 解压
如果无法权限不足,无法新建文件夹则需要先获取管理员权限,再执行以上命令cd /usr/local/java sudo tar -zxvf jdk-8u301-linux-x64.tar.gz
# 获取管理员权限 sudo passwd su root
3. 配置环境变量
继续在终端窗口中输入以下命令,配置jdk环境
sudo vi /etc/profile # 输入完成后回车
# 光标移至文件末尾,按 a 进入尾部添加状态
# 添加以下命令
export JAVA_HOME=/usr/local/java/jdk1.8.0_301
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
# 输入完成后,按 esc 键进入命令模式,使用 :wq 保存并退出
涉及路径或jdk版本以个人真实情况修改
4. 刷新环境配置使其生效
source /etc/profile
5. 判断是否安装成功
java -version
# 显示以下文本则表示安装成功
# java version "1.8.0_301"
# Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
# Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
可能出现的问题
问题一:在输入过程中,按下上下左右键,出现ABCD等字符
可能原因:原有的vim-common组件有问题
解决方法:卸载原有的vim-common组件,安装新的vim
- 先按 Esc 退出编辑状态,然后输入
:q!
退出文件编辑 sudo apt-get remove vim-common
sudo apt-get install vim
问题二:若退出终端后,重新输入java -version
,显示下述文本,
程序 'java' 已包含在下列软件包中:
* default-jre
* gcj-5-jre-headless
* openjdk-8-jre-headless
* gcj-4.8-jre-headless
* gcj-4.9-jre-headless
* openjdk-9-jre-headless
请尝试:apt install <选定的软件包>
可能原因:ubuntu不能正确执行javac或java命令
解决方法如下:
# 输入命令1
$ sudo update-alternatives --install /usr/bin/javac javac /usr/local/java/jdk1.8.0_301/bin/javac 300
# 输入命令2
$ sudo update-alternatives --install /usr/bin/java java /usr/local/java/jdk1.8.0_301/bin/java 300
# 重新测试
root@systemName:/home/userName# java -version
java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
解释:update-alternatives
: 使用 /usr/local/java/jdk1.8.0_301/bin/javac
来在自动模式中提供 /usr/bin/javac (javac)
;使用 /usr/local/java/jdk1.8.0_301/bin/java
来在自动模式中提供 /usr/bin/java (java)
参考文章: