Centos8 初体验 (五)最小化安装下python,java,node编程语言环境设置----java的在线安装和离线安装,二进制安装、源码安装

目录

在线安装

卸载java

离线安装-下载包和依赖

离线安装-rpm安装,解决没有javac命令问题

卸载仓库中的jdk,自行通过编译安装比较稳定和新版的jdk8

另外也可以参考如下的网址进行安装

最后配置系统环境变量

检测编译包的安装结果


在线安装

centos8中在线安装中可以看出,安装过程中还是加载和处理了非常多的依赖的,如果想搞明白java是个什么东西,除了要知道jvm之外,如果有时间也可以学习他的依赖包,探索其中的秘密。

[root@warclouds java]# > java_install.txt 
[root@warclouds pkg]# dnf install java -y >./java/java_install.txt
[root@warclouds java]# tail -n10000 -f java_install.txt 
上次元数据过期检查:0:52:10 前,执行于 2020年04月20日 星期一 22时50分59秒。
依赖关系解决。
================================================================================
 软件包                      架构   版本                        仓库       大小
================================================================================
安装:
 java-1.8.0-openjdk          x86_64 1:1.8.0.242.b08-0.el8_1     AppStream 318 k
安装依赖关系:
 alsa-lib                    x86_64 1.1.9-4.el8                 AppStream 429 k
 atk                         x86_64 2.28.1-1.el8                AppStream 272 k
 cairo                       x86_64 1.15.12-3.el8               AppStream 721 k
 copy-jdk-configs            noarch 3.7-1.el8                   AppStream  27 k
 fribidi                     x86_64 1.0.4-7.el8_1               AppStream  89 k
 gdk-pixbuf2-modules         x86_64 2.36.12-5.el8               AppStream 109 k
 giflib                      x86_64 5.1.4-3.el8                 AppStream  51 k
 graphite2                   x86_64 1.3.10-10.el8               AppStream 122 k
 gtk-update-icon-cache       x86_64 3.22.30-4.el8               AppStream  33 k
 harfbuzz                    x86_64 1.7.5-3.el8                 AppStream 295 k
 hicolor-icon-theme          noarch 0.17-2.el8                  AppStream  49 k
 jasper-libs                 x86_64 2.0.14-4.el8                AppStream 167 k
 java-1.8.0-openjdk-headless x86_64 1:1.8.0.242.b08-0.el8_1     AppStream  33 M
 javapackages-filesystem     noarch 5.3.0-1.module_el8.0.0+11+5b8c10bd
                                                                AppStream  30 k
 jbigkit-libs                x86_64 2.1-14.el8                  AppStream  55 k
 libX11                      x86_64 1.6.7-1.el8                 AppStream 612 k
 libX11-common               noarch 1.6.7-1.el8                 AppStream 157 k
 libXau                      x86_64 1.0.8-13.el8                AppStream  36 k
 libXcomposite               x86_64 0.4.4-14.el8                AppStream  28 k
 libXcursor                  x86_64 1.1.15-3.el8                AppStream  36 k
 libXdamage                  x86_64 1.1.4-14.el8                AppStream  27 k
 libXext                     x86_64 1.3.3-9.el8                 AppStream  45 k
 libXfixes                   x86_64 5.0.3-7.el8                 AppStream  25 k
 libXft                      x86_64 2.3.2-10.el8                AppStream  66 k
 libXi                       x86_64 1.7.9-7.el8                 AppStream  49 k
 libXinerama                 x86_64 1.1.4-1.el8                 AppStream  16 k
 libXrandr                   x86_64 1.5.1-7.el8                 AppStream  33 k
 libXrender                  x86_64 0.9.10-7.el8                AppStream  33 k
 libXtst                     x86_64 1.2.3-7.el8                 AppStream  22 k
 libdatrie                   x86_64 0.2.9-7.el8                 AppStream  33 k
 libfontenc                  x86_64 1.1.3-8.el8                 AppStream  37 k
 libjpeg-turbo               x86_64 1.5.3-10.el8                AppStream 156 k
 libthai                     x86_64 0.1.27-2.el8                AppStream 203 k
 libtiff                     x86_64 4.0.9-15.el8                AppStream 188 k
 libxcb                      x86_64 1.13-5.el8                  AppStream 230 k
 lua                         x86_64 5.3.4-11.el8                AppStream 193 k
 pango                       x86_64 1.42.4-6.el8                AppStream 298 k
 pixman                      x86_64 0.36.0-1.el8                AppStream 256 k
 ttmkfdir                    x86_64 3.0.9-54.el8                AppStream  62 k
 tzdata-java                 noarch 2019c-1.el8                 AppStream 189 k
 xorg-x11-font-utils         x86_64 1:7.5-40.el8                AppStream 103 k
 xorg-x11-fonts-Type1        noarch 7.5-19.el8                  AppStream 522 k
 avahi-libs                  x86_64 0.7-19.el8                  BaseOS     62 k
 cups-libs                   x86_64 1:2.2.6-28.el8              BaseOS    433 k
 dejavu-fonts-common         noarch 2.35-6.el8                  BaseOS     74 k
 dejavu-sans-fonts           noarch 2.35-6.el8                  BaseOS    1.5 M
 fontconfig                  x86_64 2.13.1-3.el8                BaseOS    275 k
 fontpackages-filesystem     noarch 1.44-22.el8                 BaseOS     16 k
 gdk-pixbuf2                 x86_64 2.36.12-5.el8               BaseOS    467 k
 lksctp-tools                x86_64 1.0.18-3.el8                BaseOS    100 k
安装弱的依赖:
 gtk2                        x86_64 2.24.32-4.el8               AppStream 3.4 M
启用模块流:
 javapackages-runtime               201801                                     

事务概要
================================================================================
安装  52 软件包

总下载:45 M
安装大小:161 M
下载软件包:
(1/52): atk-2.28.1-1.el8.x86_64.rpm             886 kB/s | 272 kB     00:00    
(2/52): cairo-1.15.12-3.el8.x86_64.rpm          1.9 MB/s | 721 kB     00:00    
(3/52): copy-jdk-configs-3.7-1.el8.noarch.rpm   354 kB/s |  27 kB     00:00    
(4/52): alsa-lib-1.1.9-4.el8.x86_64.rpm         1.1 MB/s | 429 kB     00:00    
(5/52): giflib-5.1.4-3.el8.x86_64.rpm           972 kB/s |  51 kB     00:00    
(6/52): gdk-pixbuf2-modules-2.36.12-5.el8.x86_6 1.1 MB/s | 109 kB     00:00    
(7/52): graphite2-1.3.10-10.el8.x86_64.rpm      1.9 MB/s | 122 kB     00:00    
(8/52): gtk-update-icon-cache-3.22.30-4.el8.x86 182 kB/s |  33 kB     00:00    
(9/52): fribidi-1.0.4-7.el8_1.x86_64.rpm        193 kB/s |  89 kB     00:00    
(10/52): gtk2-2.24.32-4.el8.x86_64.rpm          5.8 MB/s | 3.4 MB     00:00    
(11/52): harfbuzz-1.7.5-3.el8.x86_64.rpm        510 kB/s | 295 kB     00:00    
(12/52): hicolor-icon-theme-0.17-2.el8.noarch.r 122 kB/s |  49 kB     00:00    
(13/52): java-1.8.0-openjdk-1.8.0.242.b08-0.el8 1.8 MB/s | 318 kB     00:00    
(14/52): javapackages-filesystem-5.3.0-1.module 577 kB/s |  30 kB     00:00    
(15/52): jbigkit-libs-2.1-14.el8.x86_64.rpm     1.0 MB/s |  55 kB     00:00    
(16/52): jasper-libs-2.0.14-4.el8.x86_64.rpm    344 kB/s | 167 kB     00:00    
(17/52): libX11-1.6.7-1.el8.x86_64.rpm          2.8 MB/s | 612 kB     00:00    
(18/52): libX11-common-1.6.7-1.el8.noarch.rpm   970 kB/s | 157 kB     00:00    
(19/52): libXau-1.0.8-13.el8.x86_64.rpm         651 kB/s |  36 kB     00:00    
(20/52): libXcomposite-0.4.4-14.el8.x86_64.rpm  533 kB/s |  28 kB     00:00    
(21/52): libXcursor-1.1.15-3.el8.x86_64.rpm     748 kB/s |  36 kB     00:00    
(22/52): libXdamage-1.1.4-14.el8.x86_64.rpm     550 kB/s |  27 kB     00:00    
(23/52): libXext-1.3.3-9.el8.x86_64.rpm         848 kB/s |  45 kB     00:00    
(24/52): libXfixes-5.0.3-7.el8.x86_64.rpm       528 kB/s |  25 kB     00:00    
(25/52): libXi-1.7.9-7.el8.x86_64.rpm            55 kB/s |  49 kB     00:00    
(26/52): libXinerama-1.1.4-1.el8.x86_64.rpm     6.0 kB/s |  16 kB     00:02    
(27/52): libXrandr-1.5.1-7.el8.x86_64.rpm        72 kB/s |  33 kB     00:00    
(28/52): libXrender-0.9.10-7.el8.x86_64.rpm      56 kB/s |  33 kB     00:00    
(29/52): libXtst-1.2.3-7.el8.x86_64.rpm         155 kB/s |  22 kB     00:00    
(30/52): libXft-2.3.2-10.el8.x86_64.rpm          12 kB/s |  66 kB     00:05    
(31/52): libfontenc-1.1.3-8.el8.x86_64.rpm       45 kB/s |  37 kB     00:00    
(32/52): libjpeg-turbo-1.5.3-10.el8.x86_64.rpm   68 kB/s | 156 kB     00:02    
(33/52): java-1.8.0-openjdk-headless-1.8.0.242. 3.4 MB/s |  33 MB     00:09    
(34/52): libdatrie-0.2.9-7.el8.x86_64.rpm       7.5 kB/s |  33 kB     00:04    
(35/52): libtiff-4.0.9-15.el8.x86_64.rpm        2.2 MB/s | 188 kB     00:00    
(36/52): libthai-0.1.27-2.el8.x86_64.rpm        254 kB/s | 203 kB     00:00    
(37/52): lua-5.3.4-11.el8.x86_64.rpm            1.7 MB/s | 193 kB     00:00    
(38/52): libxcb-1.13-5.el8.x86_64.rpm           1.1 MB/s | 230 kB     00:00    
(39/52): ttmkfdir-3.0.9-54.el8.x86_64.rpm       616 kB/s |  62 kB     00:00    
(40/52): pixman-0.36.0-1.el8.x86_64.rpm         2.0 MB/s | 256 kB     00:00    
(41/52): tzdata-java-2019c-1.el8.noarch.rpm     1.3 MB/s | 189 kB     00:00    
(42/52): pango-1.42.4-6.el8.x86_64.rpm          613 kB/s | 298 kB     00:00    
(43/52): xorg-x11-fonts-Type1-7.5-19.el8.noarch 3.4 MB/s | 522 kB     00:00    
(44/52): avahi-libs-0.7-19.el8.x86_64.rpm       1.7 MB/s |  62 kB     00:00    
(45/52): dejavu-fonts-common-2.35-6.el8.noarch. 2.5 MB/s |  74 kB     00:00    
(46/52): xorg-x11-font-utils-7.5-40.el8.x86_64. 184 kB/s | 103 kB     00:00    
(47/52): fontconfig-2.13.1-3.el8.x86_64.rpm     2.4 MB/s | 275 kB     00:00    
(48/52): cups-libs-2.2.6-28.el8.x86_64.rpm      1.0 MB/s | 433 kB     00:00    
(49/52): fontpackages-filesystem-1.44-22.el8.no 1.1 MB/s |  16 kB     00:00    
(50/52): dejavu-sans-fonts-2.35-6.el8.noarch.rp 3.7 MB/s | 1.5 MB     00:00    
(51/52): lksctp-tools-1.0.18-3.el8.x86_64.rpm   2.1 MB/s | 100 kB     00:00    
(52/52): gdk-pixbuf2-2.36.12-5.el8.x86_64.rpm   2.8 MB/s | 467 kB     00:00    
--------------------------------------------------------------------------------
总计                                            2.3 MB/s |  45 MB     00:19     
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  运行脚本: copy-jdk-configs-3.7-1.el8.noarch                               1/1 
  运行脚本: java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64      1/1 
  准备中  :                                                                 1/1 
  安装    : libjpeg-turbo-1.5.3-10.el8.x86_64                              1/52 
  安装    : gdk-pixbuf2-2.36.12-5.el8.x86_64                               2/52 
  运行脚本: gdk-pixbuf2-2.36.12-5.el8.x86_64                               2/52 
  安装    : fontpackages-filesystem-1.44-22.el8.noarch                     3/52 
  安装    : dejavu-fonts-common-2.35-6.el8.noarch                          4/52 
  安装    : dejavu-sans-fonts-2.35-6.el8.noarch                            5/52 
  安装    : fontconfig-2.13.1-3.el8.x86_64                                 6/52 
  运行脚本: fontconfig-2.13.1-3.el8.x86_64                                 6/52 
  安装    : gtk-update-icon-cache-3.22.30-4.el8.x86_64                     7/52 
  安装    : jasper-libs-2.0.14-4.el8.x86_64                                8/52 
  安装    : lksctp-tools-1.0.18-3.el8.x86_64                               9/52 
  运行脚本: lksctp-tools-1.0.18-3.el8.x86_64                               9/52 
  安装    : avahi-libs-0.7-19.el8.x86_64                                  10/52 
  安装    : cups-libs-1:2.2.6-28.el8.x86_64                               11/52 
  安装    : tzdata-java-2019c-1.el8.noarch                                12/52 
  安装    : ttmkfdir-3.0.9-54.el8.x86_64                                  13/52 
  安装    : pixman-0.36.0-1.el8.x86_64                                    14/52 
  安装    : lua-5.3.4-11.el8.x86_64                                       15/52 
  安装    : copy-jdk-configs-3.7-1.el8.noarch                             16/52 
  安装    : libfontenc-1.1.3-8.el8.x86_64                                 17/52 
  安装    : xorg-x11-font-utils-1:7.5-40.el8.x86_64                       18/52 
  安装    : xorg-x11-fonts-Type1-7.5-19.el8.noarch                        19/52 
  运行脚本: xorg-x11-fonts-Type1-7.5-19.el8.noarch                        19/52 
  安装    : libdatrie-0.2.9-7.el8.x86_64                                  20/52 
  运行脚本: libdatrie-0.2.9-7.el8.x86_64                                  20/52 
  安装    : libthai-0.1.27-2.el8.x86_64                                   21/52 
  运行脚本: libthai-0.1.27-2.el8.x86_64                                   21/52 
  安装    : libXau-1.0.8-13.el8.x86_64                                    22/52 
  安装    : libxcb-1.13-5.el8.x86_64                                      23/52 
  安装    : libX11-common-1.6.7-1.el8.noarch                              24/52 
  安装    : libX11-1.6.7-1.el8.x86_64                                     25/52 
  安装    : libXext-1.3.3-9.el8.x86_64                                    26/52 
  安装    : libXrender-0.9.10-7.el8.x86_64                                27/52 
  安装    : libXi-1.7.9-7.el8.x86_64                                      28/52 
  安装    : libXfixes-5.0.3-7.el8.x86_64                                  29/52 
  安装    : cairo-1.15.12-3.el8.x86_64                                    30/52 
  安装    : libXcomposite-0.4.4-14.el8.x86_64                             31/52 
  安装    : libXcursor-1.1.15-3.el8.x86_64                                32/52 
  安装    : libXdamage-1.1.4-14.el8.x86_64                                33/52 
  安装    : libXtst-1.2.3-7.el8.x86_64                                    34/52 
  安装    : libXft-2.3.2-10.el8.x86_64                                    35/52 
  安装    : libXrandr-1.5.1-7.el8.x86_64                                  36/52 
  安装    : libXinerama-1.1.4-1.el8.x86_64                                37/52 
  安装    : jbigkit-libs-2.1-14.el8.x86_64                                38/52 
  运行脚本: jbigkit-libs-2.1-14.el8.x86_64                                38/52 
  安装    : libtiff-4.0.9-15.el8.x86_64                                   39/52 
  安装    : gdk-pixbuf2-modules-2.36.12-5.el8.x86_64                      40/52 
  安装    : javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.   41/52 
  安装    : java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64    42/52 
  运行脚本: java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64    42/52 
  安装    : hicolor-icon-theme-0.17-2.el8.noarch                          43/52 
  安装    : graphite2-1.3.10-10.el8.x86_64                                44/52 
  安装    : harfbuzz-1.7.5-3.el8.x86_64                                   45/52 
  运行脚本: harfbuzz-1.7.5-3.el8.x86_64                                   45/52 
  安装    : giflib-5.1.4-3.el8.x86_64                                     46/52 
  安装    : fribidi-1.0.4-7.el8_1.x86_64                                  47/52 
  安装    : pango-1.42.4-6.el8.x86_64                                     48/52 
  运行脚本: pango-1.42.4-6.el8.x86_64                                     48/52 
  安装    : atk-2.28.1-1.el8.x86_64                                       49/52 
  安装    : gtk2-2.24.32-4.el8.x86_64                                     50/52 
  运行脚本: gtk2-2.24.32-4.el8.x86_64                                     50/52 
  安装    : alsa-lib-1.1.9-4.el8.x86_64                                   51/52 
  运行脚本: alsa-lib-1.1.9-4.el8.x86_64                                   51/52 
  安装    : java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64             52/52 
  运行脚本: java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64             52/52 
  运行脚本: copy-jdk-configs-3.7-1.el8.noarch                             52/52 
  运行脚本: java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64             52/52 
  运行脚本: gdk-pixbuf2-2.36.12-5.el8.x86_64                              52/52 
  运行脚本: fontconfig-2.13.1-3.el8.x86_64                                52/52 
  运行脚本: hicolor-icon-theme-0.17-2.el8.noarch                          52/52 
  验证    : alsa-lib-1.1.9-4.el8.x86_64                                    1/52 
  验证    : atk-2.28.1-1.el8.x86_64                                        2/52 
  验证    : cairo-1.15.12-3.el8.x86_64                                     3/52 
  验证    : copy-jdk-configs-3.7-1.el8.noarch                              4/52 
  验证    : fribidi-1.0.4-7.el8_1.x86_64                                   5/52 
  验证    : gdk-pixbuf2-modules-2.36.12-5.el8.x86_64                       6/52 
  验证    : giflib-5.1.4-3.el8.x86_64                                      7/52 
  验证    : graphite2-1.3.10-10.el8.x86_64                                 8/52 
  验证    : gtk-update-icon-cache-3.22.30-4.el8.x86_64                     9/52 
  验证    : gtk2-2.24.32-4.el8.x86_64                                     10/52 
  验证    : harfbuzz-1.7.5-3.el8.x86_64                                   11/52 
  验证    : hicolor-icon-theme-0.17-2.el8.noarch                          12/52 
  验证    : jasper-libs-2.0.14-4.el8.x86_64                               13/52 
  验证    : java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64             14/52 
  验证    : java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64    15/52 
  验证    : javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.   16/52 
  验证    : jbigkit-libs-2.1-14.el8.x86_64                                17/52 
  验证    : libX11-1.6.7-1.el8.x86_64                                     18/52 
  验证    : libX11-common-1.6.7-1.el8.noarch                              19/52 
  验证    : libXau-1.0.8-13.el8.x86_64                                    20/52 
  验证    : libXcomposite-0.4.4-14.el8.x86_64                             21/52 
  验证    : libXcursor-1.1.15-3.el8.x86_64                                22/52 
  验证    : libXdamage-1.1.4-14.el8.x86_64                                23/52 
  验证    : libXext-1.3.3-9.el8.x86_64                                    24/52 
  验证    : libXfixes-5.0.3-7.el8.x86_64                                  25/52 
  验证    : libXft-2.3.2-10.el8.x86_64                                    26/52 
  验证    : libXi-1.7.9-7.el8.x86_64                                      27/52 
  验证    : libXinerama-1.1.4-1.el8.x86_64                                28/52 
  验证    : libXrandr-1.5.1-7.el8.x86_64                                  29/52 
  验证    : libXrender-0.9.10-7.el8.x86_64                                30/52 
  验证    : libXtst-1.2.3-7.el8.x86_64                                    31/52 
  验证    : libdatrie-0.2.9-7.el8.x86_64                                  32/52 
  验证    : libfontenc-1.1.3-8.el8.x86_64                                 33/52 
  验证    : libjpeg-turbo-1.5.3-10.el8.x86_64                             34/52 
  验证    : libthai-0.1.27-2.el8.x86_64                                   35/52 
  验证    : libtiff-4.0.9-15.el8.x86_64                                   36/52 
  验证    : libxcb-1.13-5.el8.x86_64                                      37/52 
  验证    : lua-5.3.4-11.el8.x86_64                                       38/52 
  验证    : pango-1.42.4-6.el8.x86_64                                     39/52 
  验证    : pixman-0.36.0-1.el8.x86_64                                    40/52 
  验证    : ttmkfdir-3.0.9-54.el8.x86_64                                  41/52 
  验证    : tzdata-java-2019c-1.el8.noarch                                42/52 
  验证    : xorg-x11-font-utils-1:7.5-40.el8.x86_64                       43/52 
  验证    : xorg-x11-fonts-Type1-7.5-19.el8.noarch                        44/52 
  验证    : avahi-libs-0.7-19.el8.x86_64                                  45/52 
  验证    : cups-libs-1:2.2.6-28.el8.x86_64                               46/52 
  验证    : dejavu-fonts-common-2.35-6.el8.noarch                         47/52 
  验证    : dejavu-sans-fonts-2.35-6.el8.noarch                           48/52 
  验证    : fontconfig-2.13.1-3.el8.x86_64                                49/52 
  验证    : fontpackages-filesystem-1.44-22.el8.noarch                    50/52 
  验证    : gdk-pixbuf2-2.36.12-5.el8.x86_64                              51/52 
  验证    : lksctp-tools-1.0.18-3.el8.x86_64                              52/52 

已安装:
  java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64                             
  gtk2-2.24.32-4.el8.x86_64                                                     
  alsa-lib-1.1.9-4.el8.x86_64                                                   
  atk-2.28.1-1.el8.x86_64                                                       
  cairo-1.15.12-3.el8.x86_64                                                    
  copy-jdk-configs-3.7-1.el8.noarch                                             
  fribidi-1.0.4-7.el8_1.x86_64                                                  
  gdk-pixbuf2-modules-2.36.12-5.el8.x86_64                                      
  giflib-5.1.4-3.el8.x86_64                                                     
  graphite2-1.3.10-10.el8.x86_64                                                
  gtk-update-icon-cache-3.22.30-4.el8.x86_64                                    
  harfbuzz-1.7.5-3.el8.x86_64                                                   
  hicolor-icon-theme-0.17-2.el8.noarch                                          
  jasper-libs-2.0.14-4.el8.x86_64                                               
  java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64                    
  javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.noarch             
  jbigkit-libs-2.1-14.el8.x86_64                                                
  libX11-1.6.7-1.el8.x86_64                                                     
  libX11-common-1.6.7-1.el8.noarch                                              
  libXau-1.0.8-13.el8.x86_64                                                    
  libXcomposite-0.4.4-14.el8.x86_64                                             
  libXcursor-1.1.15-3.el8.x86_64                                                
  libXdamage-1.1.4-14.el8.x86_64                                                
  libXext-1.3.3-9.el8.x86_64                                                    
  libXfixes-5.0.3-7.el8.x86_64                                                  
  libXft-2.3.2-10.el8.x86_64                                                    
  libXi-1.7.9-7.el8.x86_64                                                      
  libXinerama-1.1.4-1.el8.x86_64                                                
  libXrandr-1.5.1-7.el8.x86_64                                                  
  libXrender-0.9.10-7.el8.x86_64                                                
  libXtst-1.2.3-7.el8.x86_64                                                    
  libdatrie-0.2.9-7.el8.x86_64                                                  
  libfontenc-1.1.3-8.el8.x86_64                                                 
  libjpeg-turbo-1.5.3-10.el8.x86_64                                             
  libthai-0.1.27-2.el8.x86_64                                                   
  libtiff-4.0.9-15.el8.x86_64                                                   
  libxcb-1.13-5.el8.x86_64                                                      
  lua-5.3.4-11.el8.x86_64                                                       
  pango-1.42.4-6.el8.x86_64                                                     
  pixman-0.36.0-1.el8.x86_64                                                    
  ttmkfdir-3.0.9-54.el8.x86_64                                                  
  tzdata-java-2019c-1.el8.noarch                                                
  xorg-x11-font-utils-1:7.5-40.el8.x86_64                                       
  xorg-x11-fonts-Type1-7.5-19.el8.noarch                                        
  avahi-libs-0.7-19.el8.x86_64                                                  
  cups-libs-1:2.2.6-28.el8.x86_64                                               
  dejavu-fonts-common-2.35-6.el8.noarch                                         
  dejavu-sans-fonts-2.35-6.el8.noarch                                           
  fontconfig-2.13.1-3.el8.x86_64                                                
  fontpackages-filesystem-1.44-22.el8.noarch                                    
  gdk-pixbuf2-2.36.12-5.el8.x86_64                                              
  lksctp-tools-1.0.18-3.el8.x86_64                                              

完毕!

卸载java

卸载的时候如果觉得卸载的不干净,除了看usr/bin,usr/local/bin,usr/lib等之类的相关的执行文件和引用外链之外,也可以检查一下是否完全删除相关的依赖文件,包括这些包文件可以进行查询

[root@warclouds java]# tail -n200 -f java_install.txt 
 libXtst                     x86_64 1.2.3-7.el8                @AppStream  34 k
 libdatrie                   x86_64 0.2.9-7.el8                @AppStream  61 k
 libfontenc                  x86_64 1.1.3-8.el8                @AppStream  56 k
 libjpeg-turbo               x86_64 1.5.3-10.el8               @AppStream 623 k
 libthai                     x86_64 0.1.27-2.el8               @AppStream 757 k
 libtiff                     x86_64 4.0.9-15.el8               @AppStream 619 k
 libxcb                      x86_64 1.13-5.el8                 @AppStream 1.0 M
 lksctp-tools                x86_64 1.0.18-3.el8               @BaseOS    252 k
 lua                         x86_64 5.3.4-11.el8               @AppStream 624 k
 pango                       x86_64 1.42.4-6.el8               @AppStream 936 k
 pixman                      x86_64 0.36.0-1.el8               @AppStream 686 k
 ttmkfdir                    x86_64 3.0.9-54.el8               @AppStream 140 k
 tzdata-java                 noarch 2019c-1.el8                @AppStream 365 k
 xorg-x11-font-utils         x86_64 1:7.5-40.el8               @AppStream 374 k
 xorg-x11-fonts-Type1        noarch 7.5-19.el8                 @AppStream 863 k

事务概要
================================================================================
移除  52 软件包

将会释放空间:161 M
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中  :                                                                 1/1 
  删除    : java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64              1/52 
  运行脚本: java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64              1/52 
  删除    : gtk2-2.24.32-4.el8.x86_64                                      2/52 
  运行脚本: gtk2-2.24.32-4.el8.x86_64                                      2/52 
  删除    : xorg-x11-fonts-Type1-7.5-19.el8.noarch                         3/52 
  运行脚本: xorg-x11-fonts-Type1-7.5-19.el8.noarch                         3/52 
  删除    : pango-1.42.4-6.el8.x86_64                                      4/52 
  运行脚本: pango-1.42.4-6.el8.x86_64                                      4/52 
  删除    : java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64     5/52 
  运行脚本: java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64     5/52 
  删除    : cairo-1.15.12-3.el8.x86_64                                     6/52 
  删除    : gdk-pixbuf2-modules-2.36.12-5.el8.x86_64                       7/52 
  删除    : libXft-2.3.2-10.el8.x86_64                                     8/52 
  删除    : libXcursor-1.1.15-3.el8.x86_64                                 9/52 
  删除    : libXrandr-1.5.1-7.el8.x86_64                                  10/52 
  删除    : libXtst-1.2.3-7.el8.x86_64                                    11/52 
  删除    : libXi-1.7.9-7.el8.x86_64                                      12/52 
  删除    : fontconfig-2.13.1-3.el8.x86_64                                13/52 
  删除    : libtiff-4.0.9-15.el8.x86_64                                   14/52 
  删除    : libXinerama-1.1.4-1.el8.x86_64                                15/52 
  删除    : libXext-1.3.3-9.el8.x86_64                                    16/52 
  删除    : libXrender-0.9.10-7.el8.x86_64                                17/52 
  删除    : jasper-libs-2.0.14-4.el8.x86_64                               18/52 
  删除    : cups-libs-1:2.2.6-28.el8.x86_64                               19/52 
  删除    : libthai-0.1.27-2.el8.x86_64                                   20/52 
  运行脚本: libthai-0.1.27-2.el8.x86_64                                   20/52 
  删除    : libXdamage-1.1.4-14.el8.x86_64                                21/52 
  删除    : dejavu-sans-fonts-2.35-6.el8.noarch                           22/52 
  删除    : dejavu-fonts-common-2.35-6.el8.noarch                         23/52 
  删除    : copy-jdk-configs-3.7-1.el8.noarch                             24/52 
  删除    : libXfixes-5.0.3-7.el8.x86_64                                  25/52 
  删除    : harfbuzz-1.7.5-3.el8.x86_64                                   26/52 
  运行脚本: harfbuzz-1.7.5-3.el8.x86_64                                   26/52 
  删除    : xorg-x11-font-utils-1:7.5-40.el8.x86_64                       27/52 
  删除    : gtk-update-icon-cache-3.22.30-4.el8.x86_64                    28/52 
  删除    : libXcomposite-0.4.4-14.el8.x86_64                             29/52 
  删除    : fontpackages-filesystem-1.44-22.el8.noarch                    30/52 
  删除    : javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.   31/52 
  删除    : tzdata-java-2019c-1.el8.noarch                                32/52 
  删除    : hicolor-icon-theme-0.17-2.el8.noarch                          33/52 
  删除    : libX11-1.6.7-1.el8.x86_64                                     34/52 
  删除    : libxcb-1.13-5.el8.x86_64                                      35/52 
  删除    : libX11-common-1.6.7-1.el8.noarch                              36/52 
  删除    : libXau-1.0.8-13.el8.x86_64                                    37/52 
  删除    : gdk-pixbuf2-2.36.12-5.el8.x86_64                              38/52 
  运行脚本: gdk-pixbuf2-2.36.12-5.el8.x86_64                              38/52 
  删除    : libfontenc-1.1.3-8.el8.x86_64                                 39/52 
  删除    : graphite2-1.3.10-10.el8.x86_64                                40/52 
  删除    : lua-5.3.4-11.el8.x86_64                                       41/52 
  删除    : libdatrie-0.2.9-7.el8.x86_64                                  42/52 
  运行脚本: libdatrie-0.2.9-7.el8.x86_64                                  42/52 
  删除    : avahi-libs-0.7-19.el8.x86_64                                  43/52 
  删除    : libjpeg-turbo-1.5.3-10.el8.x86_64                             44/52 
  删除    : jbigkit-libs-2.1-14.el8.x86_64                                45/52 
  运行脚本: jbigkit-libs-2.1-14.el8.x86_64                                45/52 
  删除    : pixman-0.36.0-1.el8.x86_64                                    46/52 
  删除    : lksctp-tools-1.0.18-3.el8.x86_64                              47/52 
  运行脚本: lksctp-tools-1.0.18-3.el8.x86_64                              47/52 
  删除    : fribidi-1.0.4-7.el8_1.x86_64                                  48/52 
  删除    : ttmkfdir-3.0.9-54.el8.x86_64                                  49/52 
  删除    : atk-2.28.1-1.el8.x86_64                                       50/52 
  删除    : alsa-lib-1.1.9-4.el8.x86_64                                   51/52 
  运行脚本: alsa-lib-1.1.9-4.el8.x86_64                                   51/52 
  删除    : giflib-5.1.4-3.el8.x86_64                                     52/52 
  运行脚本: giflib-5.1.4-3.el8.x86_64                                     52/52 
  验证    : alsa-lib-1.1.9-4.el8.x86_64                                    1/52 
  验证    : atk-2.28.1-1.el8.x86_64                                        2/52 
  验证    : avahi-libs-0.7-19.el8.x86_64                                   3/52 
  验证    : cairo-1.15.12-3.el8.x86_64                                     4/52 
  验证    : copy-jdk-configs-3.7-1.el8.noarch                              5/52 
  验证    : cups-libs-1:2.2.6-28.el8.x86_64                                6/52 
  验证    : dejavu-fonts-common-2.35-6.el8.noarch                          7/52 
  验证    : dejavu-sans-fonts-2.35-6.el8.noarch                            8/52 
  验证    : fontconfig-2.13.1-3.el8.x86_64                                 9/52 
  验证    : fontpackages-filesystem-1.44-22.el8.noarch                    10/52 
  验证    : fribidi-1.0.4-7.el8_1.x86_64                                  11/52 
  验证    : gdk-pixbuf2-2.36.12-5.el8.x86_64                              12/52 
  验证    : gdk-pixbuf2-modules-2.36.12-5.el8.x86_64                      13/52 
  验证    : giflib-5.1.4-3.el8.x86_64                                     14/52 
  验证    : graphite2-1.3.10-10.el8.x86_64                                15/52 
  验证    : gtk-update-icon-cache-3.22.30-4.el8.x86_64                    16/52 
  验证    : gtk2-2.24.32-4.el8.x86_64                                     17/52 
  验证    : harfbuzz-1.7.5-3.el8.x86_64                                   18/52 
  验证    : hicolor-icon-theme-0.17-2.el8.noarch                          19/52 
  验证    : jasper-libs-2.0.14-4.el8.x86_64                               20/52 
  验证    : java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64             21/52 
  验证    : java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64    22/52 
  验证    : javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.   23/52 
  验证    : jbigkit-libs-2.1-14.el8.x86_64                                24/52 
  验证    : libX11-1.6.7-1.el8.x86_64                                     25/52 
  验证    : libX11-common-1.6.7-1.el8.noarch                              26/52 
  验证    : libXau-1.0.8-13.el8.x86_64                                    27/52 
  验证    : libXcomposite-0.4.4-14.el8.x86_64                             28/52 
  验证    : libXcursor-1.1.15-3.el8.x86_64                                29/52 
  验证    : libXdamage-1.1.4-14.el8.x86_64                                30/52 
  验证    : libXext-1.3.3-9.el8.x86_64                                    31/52 
  验证    : libXfixes-5.0.3-7.el8.x86_64                                  32/52 
  验证    : libXft-2.3.2-10.el8.x86_64                                    33/52 
  验证    : libXi-1.7.9-7.el8.x86_64                                      34/52 
  验证    : libXinerama-1.1.4-1.el8.x86_64                                35/52 
  验证    : libXrandr-1.5.1-7.el8.x86_64                                  36/52 
  验证    : libXrender-0.9.10-7.el8.x86_64                                37/52 
  验证    : libXtst-1.2.3-7.el8.x86_64                                    38/52 
  验证    : libdatrie-0.2.9-7.el8.x86_64                                  39/52 
  验证    : libfontenc-1.1.3-8.el8.x86_64                                 40/52 
  验证    : libjpeg-turbo-1.5.3-10.el8.x86_64                             41/52 
  验证    : libthai-0.1.27-2.el8.x86_64                                   42/52 
  验证    : libtiff-4.0.9-15.el8.x86_64                                   43/52 
  验证    : libxcb-1.13-5.el8.x86_64                                      44/52 
  验证    : lksctp-tools-1.0.18-3.el8.x86_64                              45/52 
  验证    : lua-5.3.4-11.el8.x86_64                                       46/52 
  验证    : pango-1.42.4-6.el8.x86_64                                     47/52 
  验证    : pixman-0.36.0-1.el8.x86_64                                    48/52 
  验证    : ttmkfdir-3.0.9-54.el8.x86_64                                  49/52 
  验证    : tzdata-java-2019c-1.el8.noarch                                50/52 
  验证    : xorg-x11-font-utils-1:7.5-40.el8.x86_64                       51/52 
  验证    : xorg-x11-fonts-Type1-7.5-19.el8.noarch                        52/52 

已移除:
  java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64                             
  alsa-lib-1.1.9-4.el8.x86_64                                                   
  atk-2.28.1-1.el8.x86_64                                                       
  avahi-libs-0.7-19.el8.x86_64                                                  
  cairo-1.15.12-3.el8.x86_64                                                    
  copy-jdk-configs-3.7-1.el8.noarch                                             
  cups-libs-1:2.2.6-28.el8.x86_64                                               
  dejavu-fonts-common-2.35-6.el8.noarch                                         
  dejavu-sans-fonts-2.35-6.el8.noarch                                           
  fontconfig-2.13.1-3.el8.x86_64                                                
  fontpackages-filesystem-1.44-22.el8.noarch                                    
  fribidi-1.0.4-7.el8_1.x86_64                                                  
  gdk-pixbuf2-2.36.12-5.el8.x86_64                                              
  gdk-pixbuf2-modules-2.36.12-5.el8.x86_64                                      
  giflib-5.1.4-3.el8.x86_64                                                     
  graphite2-1.3.10-10.el8.x86_64                                                
  gtk-update-icon-cache-3.22.30-4.el8.x86_64                                    
  gtk2-2.24.32-4.el8.x86_64                                                     
  harfbuzz-1.7.5-3.el8.x86_64                                                   
  hicolor-icon-theme-0.17-2.el8.noarch                                          
  jasper-libs-2.0.14-4.el8.x86_64                                               
  java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64                    
  javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.noarch             
  jbigkit-libs-2.1-14.el8.x86_64                                                
  libX11-1.6.7-1.el8.x86_64                                                     
  libX11-common-1.6.7-1.el8.noarch                                              
  libXau-1.0.8-13.el8.x86_64                                                    
  libXcomposite-0.4.4-14.el8.x86_64                                             
  libXcursor-1.1.15-3.el8.x86_64                                                
  libXdamage-1.1.4-14.el8.x86_64                                                
  libXext-1.3.3-9.el8.x86_64                                                    
  libXfixes-5.0.3-7.el8.x86_64                                                  
  libXft-2.3.2-10.el8.x86_64                                                    
  libXi-1.7.9-7.el8.x86_64                                                      
  libXinerama-1.1.4-1.el8.x86_64                                                
  libXrandr-1.5.1-7.el8.x86_64                                                  
  libXrender-0.9.10-7.el8.x86_64                                                
  libXtst-1.2.3-7.el8.x86_64                                                    
  libdatrie-0.2.9-7.el8.x86_64                                                  
  libfontenc-1.1.3-8.el8.x86_64                                                 
  libjpeg-turbo-1.5.3-10.el8.x86_64                                             
  libthai-0.1.27-2.el8.x86_64                                                   
  libtiff-4.0.9-15.el8.x86_64                                                   
  libxcb-1.13-5.el8.x86_64                                                      
  lksctp-tools-1.0.18-3.el8.x86_64                                              
  lua-5.3.4-11.el8.x86_64                                                       
  pango-1.42.4-6.el8.x86_64                                                     
  pixman-0.36.0-1.el8.x86_64                                                    
  ttmkfdir-3.0.9-54.el8.x86_64                                                  
  tzdata-java-2019c-1.el8.noarch                                                
  xorg-x11-font-utils-1:7.5-40.el8.x86_64                                       
  xorg-x11-fonts-Type1-7.5-19.el8.noarch                                        

完毕!

离线安装-下载包和依赖

离线安装的基础是需要下载对应的安装包和依赖包,而比较快捷的方式不是在网络上和官网之类的信息里面逐个地找依赖(requires)类似下面的网站

我们可以通过在可以链接外网的linux上直接将安装包和依赖包 ,我们进行一下实验是否下载的和在线安装所显示的包和依赖的数量和版本号一致。并将这些包和依赖放到其他的centos8离线机上进行rpm安装是否可以成功等(这一部分不好验证,暂时就不提供了)。开始吧

[root@warclouds java]# dnf install --downloadonly --destdir . java -y >java_install.txt 
[root@warclouds java]# ls
alsa-lib-1.1.9-4.el8.x86_64.rpm                 graphite2-1.3.10-10.el8.x86_64.rpm                                     libthai-0.1.27-2.el8.x86_64.rpm        libXrandr-1.5.1-7.el8.x86_64.rpm
atk-2.28.1-1.el8.x86_64.rpm                     gtk2-2.24.32-4.el8.x86_64.rpm                                          libtiff-4.0.9-15.el8.x86_64.rpm        libXrender-0.9.10-7.el8.x86_64.rpm
avahi-libs-0.7-19.el8.x86_64.rpm                gtk-update-icon-cache-3.22.30-4.el8.x86_64.rpm                         libX11-1.6.7-1.el8.x86_64.rpm          libXtst-1.2.3-7.el8.x86_64.rpm
cairo-1.15.12-3.el8.x86_64.rpm                  harfbuzz-1.7.5-3.el8.x86_64.rpm                                        libX11-common-1.6.7-1.el8.noarch.rpm   lksctp-tools-1.0.18-3.el8.x86_64.rpm
copy-jdk-configs-3.7-1.el8.noarch.rpm           hicolor-icon-theme-0.17-2.el8.noarch.rpm                               libXau-1.0.8-13.el8.x86_64.rpm         lua-5.3.4-11.el8.x86_64.rpm
cups-libs-2.2.6-28.el8.x86_64.rpm               jasper-libs-2.0.14-4.el8.x86_64.rpm                                    libxcb-1.13-5.el8.x86_64.rpm           pango-1.42.4-6.el8.x86_64.rpm
dejavu-fonts-common-2.35-6.el8.noarch.rpm       java-1.8.0-openjdk-1.8.0.242.b08-0.el8_1.x86_64.rpm                    libXcomposite-0.4.4-14.el8.x86_64.rpm  pixman-0.36.0-1.el8.x86_64.rpm
dejavu-sans-fonts-2.35-6.el8.noarch.rpm         java-1.8.0-openjdk-headless-1.8.0.242.b08-0.el8_1.x86_64.rpm           libXcursor-1.1.15-3.el8.x86_64.rpm     ttmkfdir-3.0.9-54.el8.x86_64.rpm
fontconfig-2.13.1-3.el8.x86_64.rpm              java_install.txt                                                       libXdamage-1.1.4-14.el8.x86_64.rpm     tzdata-java-2019c-1.el8.noarch.rpm
fontpackages-filesystem-1.44-22.el8.noarch.rpm  javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.noarch.rpm  libXext-1.3.3-9.el8.x86_64.rpm         xorg-x11-fonts-Type1-7.5-19.el8.noarch.rpm
fribidi-1.0.4-7.el8_1.x86_64.rpm                jbigkit-libs-2.1-14.el8.x86_64.rpm                                     libXfixes-5.0.3-7.el8.x86_64.rpm       xorg-x11-font-utils-7.5-40.el8.x86_64.rpm
gdk-pixbuf2-2.36.12-5.el8.x86_64.rpm            libdatrie-0.2.9-7.el8.x86_64.rpm                                       libXft-2.3.2-10.el8.x86_64.rpm
gdk-pixbuf2-modules-2.36.12-5.el8.x86_64.rpm    libfontenc-1.1.3-8.el8.x86_64.rpm                                      libXi-1.7.9-7.el8.x86_64.rpm
giflib-5.1.4-3.el8.x86_64.rpm                   libjpeg-turbo-1.5.3-10.el8.x86_64.rpm                                  libXinerama-1.1.4-1.el8.x86_64.rpm

离线安装-rpm安装,解决没有javac命令问题

[root@warclouds java]# rpm -ivh *.rpm > java_install.txt
	软件包 libjpeg-turbo-1.5.3-10.el8.x86_64 已经安装
	软件包 gdk-pixbuf2-2.36.12-5.el8.x86_64 已经安装
	软件包 fontpackages-filesystem-1.44-22.el8.noarch 已经安装
	软件包 dejavu-fonts-common-2.35-6.el8.noarch 已经安装
	软件包 dejavu-sans-fonts-2.35-6.el8.noarch 已经安装
	软件包 fontconfig-2.13.1-3.el8.x86_64 已经安装
	软件包 gtk-update-icon-cache-3.22.30-4.el8.x86_64 已经安装
	软件包 jasper-libs-2.0.14-4.el8.x86_64 已经安装
	软件包 tzdata-java-2019c-1.el8.noarch 已经安装
	软件包 ttmkfdir-3.0.9-54.el8.x86_64 已经安装
	软件包 pixman-0.36.0-1.el8.x86_64 已经安装
	软件包 lua-5.3.4-11.el8.x86_64 已经安装
	软件包 copy-jdk-configs-3.7-1.el8.noarch 已经安装
	软件包 lksctp-tools-1.0.18-3.el8.x86_64 已经安装
	软件包 libXau-1.0.8-13.el8.x86_64 已经安装
	软件包 libxcb-1.13-5.el8.x86_64 已经安装
	软件包 libX11-common-1.6.7-1.el8.noarch 已经安装
	软件包 libX11-1.6.7-1.el8.x86_64 已经安装
	软件包 libXext-1.3.3-9.el8.x86_64 已经安装
	软件包 libXrender-0.9.10-7.el8.x86_64 已经安装
	软件包 libXi-1.7.9-7.el8.x86_64 已经安装
	软件包 libXfixes-5.0.3-7.el8.x86_64 已经安装
	软件包 cairo-1.15.12-3.el8.x86_64 已经安装
	软件包 libXcomposite-0.4.4-14.el8.x86_64 已经安装
	软件包 libXcursor-1.1.15-3.el8.x86_64 已经安装
	软件包 libXdamage-1.1.4-14.el8.x86_64 已经安装
	软件包 libXtst-1.2.3-7.el8.x86_64 已经安装
	软件包 libXft-2.3.2-10.el8.x86_64 已经安装
	软件包 libXrandr-1.5.1-7.el8.x86_64 已经安装
	软件包 libXinerama-1.1.4-1.el8.x86_64 已经安装
	软件包 libfontenc-1.1.3-8.el8.x86_64 已经安装
	软件包 xorg-x11-font-utils-1:7.5-40.el8.x86_64 已经安装
	软件包 xorg-x11-fonts-Type1-7.5-19.el8.noarch 已经安装
	软件包 libdatrie-0.2.9-7.el8.x86_64 已经安装
	软件包 libthai-0.1.27-2.el8.x86_64 已经安装
	软件包 jbigkit-libs-2.1-14.el8.x86_64 已经安装
	软件包 libtiff-4.0.9-15.el8.x86_64 已经安装
	软件包 gdk-pixbuf2-modules-2.36.12-5.el8.x86_64 已经安装
	软件包 javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.noarch 已经安装
	软件包 hicolor-icon-theme-0.17-2.el8.noarch 已经安装
	软件包 graphite2-1.3.10-10.el8.x86_64 已经安装
	软件包 harfbuzz-1.7.5-3.el8.x86_64 已经安装
	软件包 giflib-5.1.4-3.el8.x86_64 已经安装
	软件包 fribidi-1.0.4-7.el8_1.x86_64 已经安装
	软件包 pango-1.42.4-6.el8.x86_64 已经安装
	软件包 avahi-libs-0.7-19.el8.x86_64 已经安装
	软件包 cups-libs-1:2.2.6-28.el8.x86_64 已经安装
	软件包 java-1.8.0-openjdk-headless-1:1.8.0.242.b08-0.el8_1.x86_64 已经安装
	软件包 atk-2.28.1-1.el8.x86_64 已经安装
	软件包 gtk2-2.24.32-4.el8.x86_64 已经安装
	软件包 alsa-lib-1.1.9-4.el8.x86_64 已经安装
	软件包 java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64 已经安装

不过javac却没有成功安装上 

[root@warclouds java]# javac
bash: javac: 未找到命令
[root@warclouds java]# java -version
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)

 为什么没有安装javac呢?

[root@warclouds java]# javac
bash: javac: 未找到命令
[root@warclouds java]# find / -name 'javac'
[root@warclouds java]# which java
/usr/bin/java
[root@warclouds java]# whereis java
java: /usr/bin/java /usr/lib/java /etc/java /usr/share/java /usr/share/man/man1/java.1.gz

这个不像我们通过源码进行安装,然后可以将指定的路径export到profile文件中,不过openjdk一定也是考虑到这点了,所以在centos8我们可以这样进行解决。通过这些我么可以看到java8、11的除了安装包之外的另外组件包。包括src、demo、devel、jmods(java模块化开发的组建)、javadoc、headerless

[root@warclouds java_dev]# dnf search java|grep jdk
上次元数据过期检查:0:11:26 前,执行于 2020年04月21日 星期二 04时08分48秒。
java-11-openjdk.x86_64 : OpenJDK Runtime Environment 11
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment 8
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment 8
java-11-openjdk-src.x86_64 : OpenJDK Source Bundle 11
java-11-openjdk-demo.x86_64 : OpenJDK Demos 11
java-11-openjdk-devel.x86_64 : OpenJDK Development Environment 11
java-11-openjdk-jmods.x86_64 : JMods for OpenJDK 11
java-1.8.0-openjdk-src.x86_64 : OpenJDK Source Bundle 8
java-1.8.0-openjdk-demo.x86_64 : OpenJDK Demos 8
java-11-openjdk-javadoc.x86_64 : OpenJDK 11 API documentation
java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment 8
java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment 8
java-11-openjdk-headless.x86_64 : OpenJDK Headless Runtime Environment 11
java-1.8.0-openjdk-javadoc.noarch : OpenJDK 8 API documentation
java-1.8.0-openjdk-headless.x86_64 : OpenJDK Headless Runtime Environment 8
java-1.8.0-openjdk-headless.x86_64 : OpenJDK Headless Runtime Environment 8
java-11-openjdk-javadoc-zip.x86_64 : OpenJDK 11 API documentation compressed in
java-1.8.0-openjdk-javadoc-zip.noarch : OpenJDK 8 API documentation compressed
java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK 8 accessibility connector
[root@warclouds java_dev]# dnf install --downloadonly --destdir . -y java-1.8.0-openjdk-devel.x86_64
[root@warclouds java_dev]# ls
java-1.8.0-openjdk-devel-1.8.0.242.b08-0.el8_1.x86_64.rpm
[root@warclouds java_dev]# rpm -ivh *.rpm
[root@warclouds java_dev]# javac
用法: javac <options> <source files>
其中, 可能的选项包括:
  -g                         生成所有调试信息
  -g:none                    不生成任何调试信息
  -g:{lines,vars,source}     只生成某些调试信息
  -nowarn                    不生成任何警告
  -verbose                   输出有关编译器正在执行的操作的消息
  -deprecation               输出使用已过时的 API 的源位置
  -classpath <路径>            指定查找用户类文件和注释处理程序的位置
  -cp <路径>                   指定查找用户类文件和注释处理程序的位置
  -sourcepath <路径>           指定查找输入源文件的位置
  -bootclasspath <路径>        覆盖引导类文件的位置
  -extdirs <目录>              覆盖所安装扩展的位置
  -endorseddirs <目录>         覆盖签名的标准路径的位置
  -proc:{none,only}          控制是否执行注释处理和/或编译。
  -processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
  -processorpath <路径>        指定查找注释处理程序的位置
  -parameters                生成元数据以用于方法参数的反射
  -d <目录>                    指定放置生成的类文件的位置
  -s <目录>                    指定放置生成的源文件的位置
  -h <目录>                    指定放置生成的本机标头文件的位置
  -implicit:{none,class}     指定是否为隐式引用文件生成类文件
  -encoding <编码>             指定源文件使用的字符编码
  -source <发行版>              提供与指定发行版的源兼容性
  -target <发行版>              生成特定 VM 版本的类文件
  -profile <配置文件>            请确保使用的 API 在指定的配置文件中可用
  -version                   版本信息
  -help                      输出标准选项的提要
  -A关键字[=值]                  传递给注释处理程序的选项
  -X                         输出非标准选项的提要
  -J<标记>                     直接将 <标记> 传递给运行时系统
  -Werror                    出现警告时终止编译
  @<文件名>                     从文件读取选项和文件名

卸载仓库中的jdk,自行通过编译安装比较稳定和新版的jdk8

[root@warclouds java_dev]# dnf remove java
依赖关系解决。
===========================================================================================
 软件包                       架构       版本                           仓库          大小
===========================================================================================
移除:
 java-1.8.0-openjdk           x86_64     1:1.8.0.242.b08-0.el8_1        @@System     1.0 M
移除依赖的软件包:
 java-1.8.0-openjdk-devel     x86_64     1:1.8.0.242.b08-0.el8_1        @System       41 M

事务概要
===========================================================================================
移除  2 软件包

将会释放空间:42 M
确定吗?[y/N]: y
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中  :                                                                            1/1 
  删除    : java-1.8.0-openjdk-devel-1:1.8.0.242.b08-0.el8_1.x86_64                    1/2 
  运行脚本: java-1.8.0-openjdk-devel-1:1.8.0.242.b08-0.el8_1.x86_64                    1/2 
  删除    : java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64                          2/2 
  运行脚本: java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64                          2/2 
  验证    : java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64                          1/2 
  验证    : java-1.8.0-openjdk-devel-1:1.8.0.242.b08-0.el8_1.x86_64                    2/2 

已移除:
  java-1.8.0-openjdk-1:1.8.0.242.b08-0.el8_1.x86_64                                        
  java-1.8.0-openjdk-devel-1:1.8.0.242.b08-0.el8_1.x86_64                                  

完毕!
[root@warclouds java_dev]# 

我们找一下比较新的安装包。比如下面的一些选项

当然我们可以直接的使用国内的高校或企业的镜像站点,在企业或者一些网络环境外网下载是非常缓慢甚至失败的,我们这里推荐几个站点,包括网易,阿里,华为和清华等

https://mirrors.huaweicloud.com/openjdk/

https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/8/jdk/x64/linux/

我们以华为镜像站点的jdk11为例,我们解压后可以发现,其已经是编译好的,解压即用,我们只需将其放入到我们的环境变量即可,或者那也不放直接使用对应文件夹下的命令,至于怎么放到环境变量可以更加的自定义一些

[root@warclouds java11]# wget https://mirrors.huaweicloud.com/openjdk/11.0.1/openjdk-11.0.1_linux-x64_bin.tar.gz
--2020-04-21 05:07:55--  https://mirrors.huaweicloud.com/openjdk/11.0.1/openjdk-11.0.1_linux-x64_bin.tar.gz
正在解析主机 mirrors.huaweicloud.com (mirrors.huaweicloud.com)... 117.78.24.36, 117.78.24.32, 117.78.24.34
正在连接 mirrors.huaweicloud.com (mirrors.huaweicloud.com)|117.78.24.36|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:187599951 (179M) [application/octet-stream]
正在保存至: “openjdk-11.0.1_linux-x64_bin.tar.gz”

openjdk-11.0.1_linux-x64_ 100%[==================================>] 178.91M  3.74MB/s  用时 49s     

2020-04-21 05:08:44 (3.67 MB/s) - 已保存 “openjdk-11.0.1_linux-x64_bin.tar.gz” [187599951/187599951])

[root@warclouds java11]# ll
总用量 183204
-rw-r--r--. 1 root root 187599951 10月  6 2018 openjdk-11.0.1_linux-x64_bin.tar.gz
[root@warclouds java11]# tar -zxvf openjdk-11.0.1_linux-x64_bin.tar.gz 
[root@warclouds java11]# cd jdk-11.0.1/
[root@warclouds jdk-11.0.1]# l
bash: l: 未找到命令
[root@warclouds jdk-11.0.1]# ls
bin  conf  include  jmods  legal  lib  release
[root@warclouds jdk-11.0.1]# cd bin/
[root@warclouds bin]# ll
总用量 508
-rwxr-xr-x. 1 668 668  12952 10月  6 2018 jaotc
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jar
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jarsigner
-rwxr-xr-x. 1 668 668   8672 10月  6 2018 java
-rwxr-xr-x. 1 668 668   8784 10月  6 2018 javac
-rwxr-xr-x. 1 668 668   8784 10月  6 2018 javadoc
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 javap
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jcmd
-rwxr-xr-x. 1 668 668  12888 10月  6 2018 jconsole
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jdb
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jdeprscan
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jdeps
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jhsdb
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jimage
-rwxr-xr-x. 1 668 668  12880 10月  6 2018 jinfo
-rwxr-xr-x. 1 668 668   8784 10月  6 2018 jjs
-rwxr-xr-x. 1 668 668   8784 10月  6 2018 jlink
-rwxr-xr-x. 1 668 668  12880 10月  6 2018 jmap
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jmod
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jps
-rwxr-xr-x. 1 668 668   8792 10月  6 2018 jrunscript
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jshell
-rwxr-xr-x. 1 668 668  12880 10月  6 2018 jstack
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jstat
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 jstatd
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 keytool
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 pack200
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 rmic
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 rmid
-rwxr-xr-x. 1 668 668   8744 10月  6 2018 rmiregistry
-rwxr-xr-x. 1 668 668   8736 10月  6 2018 serialver
-rwxr-xr-x. 1 668 668 117656 10月  6 2018 unpack200
[root@warclouds bin]# javac
bash: /usr/bin/javac: 没有那个文件或目录
[root@warclouds bin]# ./java
用法:java [options] <主类> [args...]
           (执行类)
   或  java [options] -jar <jar 文件> [args...]
           (执行 jar 文件)
   或  java [options] -m <模块>[/<主类>] [args...]
       java [options] --module <模块>[/<主类>] [args...]
           (执行模块中的主类)
   或  java [options] <源文件> [args]
           (执行单个源文件程序)

 将主类、源文件、-jar <jar 文件>、-m 或
 --module <模块>/<主类> 后的参数作为参数
 传递到主类。

 其中,选项包括:

    -cp <目录和 zip/jar 文件的类搜索路径>
    -classpath <目录和 zip/jar 文件的类搜索路径>
    --class-path <目录和 zip/jar 文件的类搜索路径>
                  使用 : 分隔的, 用于搜索类文件的目录, JAR 档案
                  和 ZIP 档案列表。
    -p <模块路径>
    --module-path <模块路径>...
                  用 : 分隔的目录列表, 每个目录
                  都是一个包含模块的目录。
    --upgrade-module-path <模块路径>...
                  用 : 分隔的目录列表, 每个目录
                  都是一个包含模块的目录, 这些模块
                  用于替换运行时映像中的可升级模块
    --add-modules <模块名称>[,<模块名称>...]
                  除了初始模块之外要解析的根模块。
                  <模块名称> 还可以为 ALL-DEFAULT, ALL-SYSTEM,
                  ALL-MODULE-PATH.
    --list-modules
                  列出可观察模块并退出
    -d <module name>
    --describe-module <模块名称>
                  描述模块并退出
    --dry-run     创建 VM 并加载主类, 但不执行 main 方法。
                  此 --dry-run 选项对于验证诸如
                  模块系统配置这样的命令行选项可能非常有用。
    --validate-modules
                  验证所有模块并退出
                  --validate-modules 选项对于查找
                  模块路径中模块的冲突及其他错误可能非常有用。
    -D<名称>=<值>
                  设置系统属性
    -verbose:[class|module|gc|jni]
                  启用详细输出
    -version      将产品版本输出到错误流并退出
    --version     将产品版本输出到输出流并退出
    -showversion  将产品版本输出到错误流并继续
    --show-version
                  将产品版本输出到输出流并继续
    --show-module-resolution
                  在启动过程中显示模块解析输出
    -? -h -help
                  将此帮助消息输出到错误流
    --help        将此帮助消息输出到输出流
    -X            将额外选项的帮助输出到错误流
    --help-extra  将额外选项的帮助输出到输出流
    -ea[:<程序包名称>...|:<类名>]
    -enableassertions[:<程序包名称>...|:<类名>]
                  按指定的粒度启用断言
    -da[:<程序包名称>...|:<类名>]
    -disableassertions[:<程序包名称>...|:<类名>]
                  按指定的粒度禁用断言
    -esa | -enablesystemassertions
                  启用系统断言
    -dsa | -disablesystemassertions
                  禁用系统断言
    -agentlib:<库名>[=<选项>]
                  加载本机代理库 <库名>, 例如 -agentlib:jdwp
                  另请参阅 -agentlib:jdwp=help
    -agentpath:<路径名>[=<选项>]
                  按完整路径名加载本机代理库
    -javaagent:<jar 路径>[=<选项>]
                  加载 Java 编程语言代理, 请参阅 java.lang.instrument
    -splash:<图像路径>
                  使用指定的图像显示启动屏幕
                  自动支持和使用 HiDPI 缩放图像
                  (如果可用)。应始终将未缩放的图像文件名 (例如, image.ext)
                  作为参数传递给 -splash 选项。
                  将自动选取提供的最合适的缩放
                  图像。
                  有关详细信息, 请参阅 SplashScreen API 文档
    @argument 文件
                  一个或多个包含选项的参数文件
    -disable-@files
                  阻止进一步扩展参数文件
    --enable-preview
                  允许类依赖于此发行版的预览功能
要为长选项指定参数, 可以使用 --<名称>=<值> 或
--<名称> <值>。

[root@warclouds bin]# ./javac 
用法: javac <options> <source files>
其中, 可能的选项包括:
  @<filename>                  从文件读取选项和文件名
  -Akey[=value]                传递给注释处理程序的选项
  --add-modules <模块>(,<模块>)*
        除了初始模块之外要解析的根模块; 如果 <module>
                为 ALL-MODULE-PATH, 则为模块路径中的所有模块。
  --boot-class-path <path>, -bootclasspath <path>
        覆盖引导类文件的位置
  --class-path <path>, -classpath <path>, -cp <path>
        指定查找用户类文件和注释处理程序的位置
  -d <directory>               指定放置生成的类文件的位置
  -deprecation                 输出使用已过时的 API 的源位置
  --enable-preview             启用预览语言功能。要与 -source 或 --release 一起使用。
  -encoding <encoding>         指定源文件使用的字符编码
  -endorseddirs <dirs>         覆盖签名的标准路径的位置
  -extdirs <dirs>              覆盖所安装扩展的位置
  -g                           生成所有调试信息
  -g:{lines,vars,source}       只生成某些调试信息
  -g:none                      不生成任何调试信息
  -h <directory>               指定放置生成的本机标头文件的位置
  --help, -help, -?            输出此帮助消息
  --help-extra, -X             输出额外选项的帮助
  -implicit:{none,class}       指定是否为隐式引用文件生成类文件
  -J<flag>                     直接将 <标记> 传递给运行时系统
  --limit-modules <模块>(,<模块>)*
        限制可观察模块的领域
  --module <module-name>, -m <module-name>
        只编译指定的模块, 请检查时间戳
  --module-path <path>, -p <path>
        指定查找应用程序模块的位置
  --module-source-path <module-source-path>
        指定查找多个模块的输入源文件的位置
  --module-version <版本>        指定正在编译的模块版本
  -nowarn                      不生成任何警告
  -parameters                  生成元数据以用于方法参数的反射
  -proc:{none,only}            控制是否执行注释处理和/或编译。
  -processor <class1>[,<class2>,<class3>...]
        要运行的注释处理程序的名称; 绕过默认的搜索进程
  --processor-module-path <path>
        指定查找注释处理程序的模块路径
  --processor-path <path>, -processorpath <path>
        指定查找注释处理程序的位置
  -profile <profile>           请确保使用的 API 在指定的配置文件中可用
  --release <release>          针对特定 VM 版本进行编译。支持的目标: 6, 7, 8, 9, 10, 11
  -s <directory>               指定放置生成的源文件的位置
  -source <release>            提供与指定发行版的源兼容性
  --source-path <path>, -sourcepath <path>
        指定查找输入源文件的位置
  --system <jdk>|none          覆盖系统模块位置
  -target <release>            生成特定 VM 版本的类文件
  --upgrade-module-path <path>
        覆盖可升级模块位置
  -verbose                     输出有关编译器正在执行的操作的消息
  --version, -version          版本信息
  -Werror                      出现警告时终止编译

另外也可以参考如下的网址进行安装

Linux卸载自带的openJdk,并且安装JDK1.8

最后配置系统环境变量

查看想装进系统的java的环境变量

[root@warclouds jdk8u242-b08]# cd bin/
[root@warclouds bin]# pwd
/var/cache/pkg/java11/jdk8u242/jdk8u242-b08/bin
[root@warclouds bin]# cd ..
[root@warclouds jdk8u242-b08]# ll
总用量 51080
-r--r--r--.  1 root root     1522 1月  19 09:53 ASSEMBLY_EXCEPTION
drwxr-xr-x.  2 root root     4096 1月  19 09:53 bin
drwxr-xr-x.  9 root root      119 1月  19 09:54 demo
drwxr-xr-x.  3 root root      132 1月  19 09:53 include
drwxr-xr-x.  4 root root       95 1月  19 09:53 jre
drwxr-xr-x.  3 root root      144 1月  19 09:53 lib
-r--r--r--.  1 root root    19274 1月  19 09:53 LICENSE
drwxr-xr-x.  4 root root       47 1月  19 09:53 man
-rw-r--r--.  1 root root       84 1月  19 09:53 release
drwxr-xr-x. 10 root root      151 1月  19 09:53 sample
-rw-r--r--.  1 root root 52119065 1月  19 09:53 src.zip
-r--r--r--.  1 root root   148650 1月  19 09:53 THIRD_PARTY_README
[root@warclouds jdk8u242-b08]# cd lib/
[root@warclouds lib]# ll
总用量 38140
drwxr-xr-x. 3 root root       35 1月  19 09:53 amd64
-rw-r--r--. 1 root root 17817472 1月  19 09:53 ct.sym
-rw-r--r--. 1 root root   163048 1月  19 09:53 dt.jar
-rw-r--r--. 1 root root    19429 1月  19 09:53 ir.idl
-rw-r--r--. 1 root root   407730 1月  19 09:53 jconsole.jar
-rwxr-xr-x. 1 root root    13551 1月  19 09:53 jexec
-rw-r--r--. 1 root root     1637 1月  19 09:53 orb.idl
-rw-r--r--. 1 root root  2283684 1月  19 09:53 sa-jdi.jar
-rw-r--r--. 1 root root 18334391 1月  19 09:53 tools.jar
[root@warclouds lib]# 

开始编辑profile文件,通过shell命令export来设置

[root@warclouds jdk8u242-b08]# vim /etc/profile

# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
    umask 002
else
    umask 022
fi

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
    if [ -r "$i" ]; then
        if [ "${-#*i}" != "$-" ]; then
            . "$i"
        else
            . "$i" >/dev/null
        fi
    fi
done

unset i
unset -f pathmunge
export JAVA_HOME=/var/cache/pkg/java11/jdk8u242/jdk8u242-b08/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
if [ -n "${BASH_VERSION-}" ] ; then
        if [ -f /etc/bashrc ] ; then
                # Bash login shells run only /etc/profile
                # Bash non-login shells run only /etc/bashrc
                # Check for double sourcing is done in /etc/bashrc.
                . /etc/bashrc
       fi
fi

检测编译包的安装结果

[root@warclouds jdk8u242-b08]# source /etc/profile
[root@warclouds jdk8u242-b08]# java -version
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.242-b08, mixed mode)
[root@warclouds jdk8u242-b08]# javac -version
javac 1.8.0_242

好了,至此关于python,node,java的不同安装方式都进行了一遍。

为什么这么麻烦的写这么多呢,不就几行命令就能搞定吗?在时间允许下,在好奇心和学习力的驱动下,我们不仅要知其然,更要知其所以然。浩然的linux系统越来越庞杂完善,如果我们能知道更多的内在运行机理,对于我们开发和调试以及部署都将是非常有益的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千码君2016

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值