dnf 安装openjdk1.8
AnolisOS 可以使用 dnf 或者 yum 进行软件安装,两者指令结构基本相同,推荐使用dnf。
dnf --version #查看 dnf版本
4.7.0
Installed: dnf-0:4.7.0-8.0.1.an8.noarch at Mon 04 Jul 2022 05:16:37 AM GMT
Built : OpenAnolis Community at Wed 18 May 2022 08:05:12 AM GMT
Installed: rpm-0:4.14.3-23.0.1.an8.x86_64 at Mon 04 Jul 2022 05:16:24 AM GMT
Built : OpenAnolis Community at Wed 18 May 2022 11:24:53 AM GMT
使用dnf查找jdk
dnf search java|grep jdk
检查是否已经安装了openjdk,查看具体版本
# java -version
openjdk version "1.8.0_342"
OpenJDK Runtime Environment (build 1.8.0_342-b07)
OpenJDK 64-Bit Server VM (build 25.342-b07, mixed mode)
使用dnf安装openjdk1.8
dnf install java-1.8.0-openjdk
Repository epel is listed more than once in the configuration
上次元数据过期检查:2:08:27 前,执行于 2022年09月22日 星期四 13时52分44秒。
软件包 java-1.8.0-openjdk-1:1.8.0.342.b07-2.an8_6.x86_64 已安装。
依赖关系解决。
============================================================================================================================================================================
软件包 架构 版本 仓库 大小
============================================================================================================================================================================
升级:
java-1.8.0-openjdk x86_64 1:1.8.0.345.b01-1.an8_6 AppStream 347 k
java-1.8.0-openjdk-devel x86_64 1:1.8.0.345.b01-1.an8_6 AppStream 9.8 M
java-1.8.0-openjdk-headless x86_64 1:1.8.0.345.b01-1.an8_6 AppStream 34 M
事务概要
============================================================================================================================================================================
升级 3 软件包
总下载:44 M
确定吗?[y/N]:
已升级:
java-1.8.0-openjdk-1:1.8.0.345.b01-1.an8_6.x86_64 java-1.8.0-openjdk-devel-1:1.8.0.345.b01-1.an8_6.x86_64 java-1.8.0-openjdk-headless-1:1.8.0.345.b01-1.an8_6.x86_64
完毕!
[root@anolis ~]# java -version
openjdk version "1.8.0_345"
OpenJDK Runtime Environment (build 1.8.0_345-b01)
OpenJDK 64-Bit Server VM (build 25.345-b01, mixed mode)
可见新版本的 openjdk1.8已经安装成功。
查看安装路径,默认安装路径在/usr/lib/jvm/下边,
如/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-2.an8_6.x86_64
[root@anolis ~]# which java
/usr/bin/java
[root@anolis ~]# echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-2.an8_6.x86_64
[root@anolis ~]# ll /usr/bin/java
lrwxrwxrwx 1 root root 22 9月 22 16:04 /usr/bin/java -> /etc/alternatives/java
[root@anolis ~]# ll /etc/alternatives/java
lrwxrwxrwx 1 root root 73 9月 22 16:04 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.345.b01-1.an8_6.x86_64/jre/bin/java
[root@anolis ~]# ll /usr/lib/jvm/
总用量 0
lrwxrwxrwx 1 root root 26 9月 22 16:04 java -> /etc/alternatives/java_sdk
lrwxrwxrwx 1 root root 32 9月 22 16:04 java-1.8.0 -> /etc/alternatives/java_sdk_1.8.0
lrwxrwxrwx 1 root root 40 9月 22 16:04 java-1.8.0-openjdk -> /etc/alternatives/java_sdk_1.8.0_openjdk
drwxr-xr-x 7 root root 135 9月 22 16:04 java-1.8.0-openjdk-1.8.0.345.b01-1.an8_6.x86_64
lrwxrwxrwx 1 root root 34 9月 22 16:04 java-openjdk -> /etc/alternatives/java_sdk_openjdk
lrwxrwxrwx 1 root root 21 9月 22 16:04 jre -> /etc/alternatives/jre
lrwxrwxrwx 1 root root 27 9月 22 16:04 jre-1.8.0 -> /etc/alternatives/jre_1.8.0
lrwxrwxrwx 1 root root 35 9月 22 16:04 jre-1.8.0-openjdk -> /etc/alternatives/jre_1.8.0_openjdk
lrwxrwxrwx 1 root root 51 9月 14 11:30 jre-1.8.0-openjdk-1.8.0.345.b01-1.an8_6.x86_64 -> java-1.8.0-openjdk-1.8.0.345.b01-1.an8_6.x86_64/jre
lrwxrwxrwx 1 root root 29 9月 22 16:04 jre-openjdk -> /etc/alternatives/jre_openjdk
查看java是否可用:javac
# javac
-bash: javac: command not found
错误原因:默认安装完只有运行环境,java安装目录下只有jre文件夹
安装开发环境dnf install java-1.8.0-openjdk-devel.x86_64
安装完可看到java安装目录下出现bin、lib等文件夹:
[root@anolis ~]# cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.345.b01-1.an8_6.x86_64/
[root@anolis java-1.8.0-openjdk-1.8.0.345.b01-1.an8_6.x86_64]# ll
总用量 184
-rw-r--r-- 1 root root 1522 9月 14 11:29 ASSEMBLY_EXCEPTION
drwxr-xr-x 2 root root 4096 9月 22 16:04 bin
drwxr-xr-x 3 root root 132 9月 22 16:04 include
drwxr-xr-x 4 root root 95 9月 22 16:04 jre
drwxr-xr-x 3 root root 144 9月 22 16:04 lib
-rw-r--r-- 1 root root 19274 9月 14 11:29 LICENSE
drwxr-xr-x 2 root root 204 9月 22 16:04 tapset
-rw-r--r-- 1 root root 157063 9月 14 11:29 THIRD_PARTY_README
再次输入javac说明安装成功
[root@anolis ~]# javac
用法: javac
查看环境变量
vi /etc/profile
在profile文件末尾查看如下内容:
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-2.an8_6.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
使环境变量生效:source /etc/profile
[root@anolis ~]# source /etc/profile
[root@anolis ~]# echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-2.an8_6.x86_64
二进制安装jdk1.8
上传jdk-8u11-linux-x64.tar.gz 安装包
解压jdk文件
tar -xzvf jdk-8u11-linux-x64.tar.gz -C /usr/local/
添加环境变量
echo 'export JAVA_HOME=/usr/local/jdk1.8.0_11' | sudo tee -a /etc/profile
echo 'export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' | sudo tee -a /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' | sudo tee -a /etc/profile
使变量立即生效
source /etc/profile
# java -version
java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)
[root@anolis ~]# javac
Usage: javac