一般情况下,centos会自带OpenJDK,Hadoop的运行环境要求自己配置JRE,但在home下配置好了JRE后,使用java -version仍然看到OpenJDK,原因是系统根据$PATH路径,首先会在/usr/bin/中找到OpenJDK的java,并非我们自己配置的JDK。
解决办法有两种:1.配置/etc/profile使/home/xxx/jdk/bin首先被找到。2.卸载OpenJDK
这里推荐第二种
1.查看安装了哪些OpenJDK
sudo rpm -qa | grep jdk
2.卸载OpenJDK
-open*
3.这时在/usr/bin中已经没有java了
4.使用java -version看到了自己配置的JDK,这里已经成功卸载
[hadoop@master1 ~]$ java -version java version "1.8.0_111" Java(TM) SE Runtime Environment (build 1.8.0_111-b14) Java HotSpot(TM) -Bit Server VM (build 25.111-b14, mixed mode)
5.这一步可以不看了,仅仅是通过卸载记录来研究OpenJDK的RPM包依赖关系
[oracle@hadoop ~]$ -openjdk* Loaded plugins: fastestmirror Repodata is over weeks old. Install yum-cron? Or run: yum makecache fast You need to be root to perform this command. [oracle@hadoop ~]$ su Password: [root@hadoop oracle]# -openjdk* Loaded plugins: fastestmirror Repodata is over weeks old. Install yum-cron? Or run: yum makecache fast Resolving Dependencies --> Running transaction check ---> Package java--openjdk-headless.x86_64 :.b15.el7_3 will be erased --> Processing Dependency: java-headless >= ::libreoffice-core-.el7.x86_64 ---> Package unoconv.noarch :.el7 will be erased --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Removing: java--openjdk-headless x86_64 :.b15.el7_3 @updates M Removing for dependencies: libreoffice-calc x86_64 :.el7 @base M unoconv noarch .el7 @base k Transaction Summary ================================================================================ Remove Package (+ Dependent packages) Installed size: M Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Erasing : unoconv-.el7.noarch / Erasing : :java--openjdk-headless-.b15.el7_3.x86_ / failed to read link /usr/bin/java: No such file or directory Verifying : :libreoffice-writer-.el7.x86_64 / Verifying : :libreoffice-impress-.el7.x86_64 / Verifying : :libreoffice-pdfimport-.el7.x86_64 / Removed: java--openjdk-headless.x86_64 :.b15.el7_3 Dependency Removed: libreoffice-calc.x86_64 :.el7 unoconv.noarch :.el7 Complete! [root@hadoop oracle]#
通过记录可以看出 libreoffice这个软件是基于JAVA的,卸载OpenJDK后,libreoffice就不能用了,节省了402M的磁盘空间。