zoukankan      html  css  js  c++  java
  • 如何查找YUM安装的JAVA_HOME环境变量详解

    如何查找YUM安装的JAVA_HOME环境变量详解

     更新时间:2017年10月27日 09:44:56   作者:铁锚   我要评论
    这篇文章主要给大家介绍了关于如何查找YUM安装的JAVA_HOME环境变量的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

    前言

    开发中很多需要javac 的程序依赖 JAVA_HOME环境变量.

    如果是手工下载源码安装的JDK,很容易知道JAVA_HOME的目录. 例如

    1
    whereis javac
    1
    javac: /usr/local/jdk1.8.0_74/bin/javac

    那么对应的 JAVA_HOME 为 /usr/local/jdk1.8.0_74.

    而 YUM 安装的 jdk, 不需要配置 PATH, 因为已经自动使用软连接做好了。

    1
    2
    echo $PATH
    javac -version

    1. YUM安装JDK

    1.1 查找 可用的JDK

    1
    sudo yum list -y java*

    然后可用看到类似下面这样的输出(省略部分…):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    ...
    Available Packages
     
    java-1.7.0-openjdk.x86_64
    java-1.7.0-openjdk-demo.x86_64
    java-1.7.0-openjdk-devel.x86_64
    java-1.7.0-openjdk-javadoc.noarch
    java-1.7.0-openjdk-src.x86_64
    java-1.8.0-openjdk.x86_64
    java-1.8.0-openjdk-debug.x86_64
    java-1.8.0-openjdk-demo.x86_64
    java-1.8.0-openjdk-demo-debug.x86_64
    java-1.8.0-openjdk-devel.x86_64
    java-1.8.0-openjdk-devel-debug.x86_64
    java-1.8.0-openjdk-headless.x86_64
    java-1.8.0-openjdk-headless-debug.x86_64
    java-1.8.0-openjdk-javadoc.noarch
    java-1.8.0-openjdk-javadoc-debug.noarch
    java-1.8.0-openjdk-src.x86_64
    java-1.8.0-openjdk-src-debug.x86_64

    根据需要, 安装 JDK1.7 或者 JDK1.8, 当前1.8已经很稳定了,推荐JDK1.8

    1.2 安装 JDK

    安装 JDK1.7 的命令如下:

    1
    sudo yum install -y java-1.7.0-openjdk*

    安装 JDK1.8 的命令如下:

    1
    sudo yum install -y java-1.8.0-openjdk*

    2. 查找 JDK1.7 的 JAVA_HOME

    2.1 查找 javac :

    1
    whereis javac
    1
    javac: /usr/bin/javac /usr/share/man/man1/javac.1.gz

    可以看到, /usr/bin/javac, 一般来说 /usr/bin 默认加入了 PATH 路径,所以可以直接执行.

    然后一路跟踪,看软连接指向的位置( ll 是 ls -l 的快捷命令):

    1
    ll /usr/bin/javac
    1
    … /usr/bin/javac -> /etc/alternatives/javac

    然后继续:

    1
    ll /etc/alternatives/javac

    JDK1.7 大致是这个样子:

    1
    … /etc/alternatives/javac -> /usr/lib/jvm/java-1.7.0-openjdk.x86_64/bin/javac

    再继续:

    1
    ll /usr/lib/jvm/java-1.7.0-openjdk.x86_64/bin/javac

    不再是软连接。 结合这个地址可以分析得到, JAVA_HOME 的值应该是 /usr/lib/jvm/java-1.7.0-openjdk.x86_64。

    当然,使用这个地址就可以了!

    如果继续下一步查看,可以看到具体的版本号:

    1
    ll /usr/lib/jvm/java-1.7.0-openjdk.x86_64
    1
    … /usr/lib/jvm/java-1.7.0-openjdk.x86_64 -> java-1.7.0-openjdk-1.7.0.79.x86_64

    使用下面的命令即可看到真实的目录, 但一般不使用下面的具体版本号,升级什么的可能会出问题。

    1
    ll /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.79.x86_64

    具体内容类似下面这样:

    1
    ll /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.79.x86_64
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    total 43952
    -r--r--r-- 1 root root 1503 Apr 15 2015 ASSEMBLY_EXCEPTION
    drwxr-xr-x 2 root root 4096 Dec 25 2015 bin
    drwxr-xr-x 10 root root 4096 May 2 2015 demo
    drwxr-xr-x 3 root root 4096 May 2 2015 include
    drwxr-xr-x 4 root root 4096 May 2 2015 jre
    drwxr-xr-x 3 root root 4096 May 3 2015 lib
    -r--r--r-- 1 root root 19263 Apr 15 2015 LICENSE
    drwxr-xr-x 8 root root 4096 May 2 2015 sample
    -rw-r--r-- 1 root root 44775741 Apr 15 2015 src.zip
    drwxr-xr-x 2 root root 4096 May 2 2015 tapset
    -r--r--r-- 1 root root 172264 Apr 15 2015 THIRD_PARTY_README

    2.2 将 JAVA_HOME 加入环境变量:

    1
    export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64

    当然, export 只是临时的。下次重启后就没了。

    可以添加到rc文件,比如 /etc/rc.d/rc.local 之中。

    当然,可以使用 vim 编辑, 或者是 echo >> 命令

    1
    2
    3
    4
    jhometip='# add JAVA_HOME'
    jhomescript='export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64'
    sudo echo $jhometip >> /etc/rc.d/rc.local
    sudo echo $jhomescript >> /etc/rc.d/rc.local

    这样一般就设置好了。

    3. 查找 JDK1.8 的 JAVA_HOME

    3.1 查找 javac :

    1
    whereis javac
    1
    javac: /usr/bin/javac /usr/share/man/man1/javac.1.gz

    可以看到, /usr/bin/javac, 一般来说 /usr/bin 默认加入了 PATH 路径,所以可以直接执行.

    然后一路跟踪,看软连接指向的位置( ll 是 ls -l 的快捷命令):

    1
    ll /usr/bin/javac
    1
    … /usr/bin/javac -> /etc/alternatives/javac

    然后继续:

    1
    ll /etc/alternatives/javac

    JDK1.8 大致是这个样子:

    1
    2
    3
    … /etc/alternatives/javac ->
     
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-1.b14.el7_2.x86_64/bin/javac

    再继续:

    1
    ll /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-1.b14.el7_2.x86_64/bin/javac

    不再是软连接。 结合这个地址可以分析得到, JAVA_HOME 的值应该是 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-1.b14.el7_2.x86_64。

    使用这个地址就可以了!

    如果继续下一步查看:

    1
    ll /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-1.b14.el7_2.x86_64

    具体内容类似下面这样:

    1
    2
    3
    4
    5
    6
    total 16
    drwxr-xr-x. 2 root root 4096 Sep 21 23:08 bin
    drwxr-xr-x. 3 root root 4096 Sep 21 23:08 include
    drwxr-xr-x. 4 root root 26 Sep 21 23:08 jre
    drwxr-xr-x. 3 root root 4096 Sep 21 23:08 lib
    drwxr-xr-x. 2 root root 4096 Sep 21 23:08 tapset

    3.2 查看软连接:

    查看 jvm 目录:

    1
    ll /usr/lib/jvm

    则可以看到很多软连接:

    1
    2
    3
    4
    5
    6
    7
    8
    java -> /etc/alternatives/java_sdk
    java-1.8.0 -> /etc/alternatives/java_sdk_1.8.0
    java-1.8.0-openjdk -> /etc/alternatives/java_sdk_1.8.0_openjdk
    java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64
    java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64-debug
    java-openjdk -> /etc/alternatives/java_sdk_openjdk
    jre -> /etc/alternatives/jre
    jre-1.8.0 -> /etc/alternatives/jre_1.8.0

    类似这样的,不管 jre 开头的部分,可以看到 /etc/alternatives/java_sdk_1.8.0 这样的目录;

    执行 :

    1
    2
    ll /etc/alternatives/java_sdk_1.8.0
    ll /etc/alternatives/java_sdk

    然后发现, 这一堆链接都是指向上面的 JAVA_HOME 路径:

    1
    2
    /etc/alternatives/java_sdk_1.8.0 ->
     /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64

    所以,可以使用其中之一作为 JAVA_HOME 环境变量的值。

    说明: 既然安装了,基本上服务器上就不会频繁变更. 如果有变更,则查找并修正即可。

    3.3 将 JAVA_HOME 加入环境变量:

    1
    export JAVA_HOME=/etc/alternatives/java_sdk_1.8.0

    当然, export 只是临时的。下次重启后就没了。

    可以添加到rc文件,比如 /etc/rc.d/rc.local 之中。

    当然,可以使用 vim 编辑, 或者是 echo >> 命令

    1
    2
    3
    4
    jhometip='# add JAVA_HOME'
    jhomescript='export JAVA_HOME=/etc/alternatives/java_sdk_1.8.0'
    sudo echo $jhometip >> /etc/rc.d/rc.local
    sudo echo $jhomescript >> /etc/rc.d/rc.local

    这样一般就设置好了。

    最后如果Java中设置JAVA_HOME无效可以参考://www.jb51.net/article/122632.htm

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

                        <div class="art_xg">
                        <h4>您可能感兴趣的文章:</h4><ul><li><a href="/article/172538.htm" title="CentOS8 安装 jdk8 / java8的教程(推荐)" target="_blank">CentOS8 安装 jdk8 / java8的教程(推荐)</a></li><li><a href="/article/159009.htm" title="NetBeans安装提示neatbeans cannot find java 1.8 or higher" target="_blank">NetBeans安装提示neatbeans cannot find java 1.8 or higher</a></li><li><a href="/article/137412.htm" title="Java新手环境搭建 Tomcat安装配置教程" target="_blank">Java新手环境搭建 Tomcat安装配置教程</a></li><li><a href="/article/137409.htm" title="Java新手环境搭建 JDK8安装配置教程" target="_blank">Java新手环境搭建 JDK8安装配置教程</a></li><li><a href="/article/149422.htm" title="IntelliJ IDEA报错Error:java: Compilation failed: internal java compiler error的解决办法" target="_blank">IntelliJ IDEA报错Error:java: Compilation failed: internal java compiler error的解决办法</a></li><li><a href="/article/149419.htm" title="IntelliJ IDEA引入第三方jar包或查看Java源码的时候报decompiled.class file bytecode version:52.0(java 8)错误的解决办法" target="_blank">IntelliJ IDEA引入第三方jar包或查看Java源码的时候报decompiled.class file bytecode version:52.0(java 8)错误的解决办法</a></li><li><a href="/article/149393.htm" title="IntelliJ IDEA中折叠所有Java代码,再也不怕大段的代码了" target="_blank">IntelliJ IDEA中折叠所有Java代码,再也不怕大段的代码了</a></li><li><a href="/article/174269.htm" title="Java开发工具IntelliJ IDEA安装图解" target="_blank">Java开发工具IntelliJ IDEA安装图解</a></li></ul>
                        </div>
    					<div style="padding: 10px 0 20px 0;color:red;font-weight:bold;">如对本文有所疑义或者对本文内容提供补充建议,请联系小编<a href="http://wpa.qq.com/msgrd?v=3&amp;uin=2998481778&amp;site=jb51net&amp;menu=yes" target="_blank"><img border="0" src="https://pub.idqqimg.com/qconn/wpa/button/button_111.gif" alt="点击这里给我发消息" title="点击这里给我发消息"></a>,本站会保留修改者版权</div><div class="lbd_bot clearfix">
    					<script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script><ins class="adsbygoogle" style="display:inline-block;728px;height:90px" data-ad-client="ca-pub-6384567588307613" data-ad-slot="3921475131"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script>
    
    					</div>
    				<p>原文链接:http://blog.csdn.net/renfufei/article/details/52621034</p><div class="jb51ewm"><div class="fl"><img src="//files.jb51.net/skin/2018/images/jb51ewm.png"></div><div class="fr"><p>微信公众号搜索 “ <span>脚本之家</span> ” ,选择关注</p><p>程序猿的那些事、送书等活动等着你</p></div></div></div><!--endmain-->
    				<div class="tags clearfix">
    					<i class="icon-tag"></i>
    					<ul class="meta-tags">
    					  <li class="tag item"><a href="http://common.jb51.net/tag/yum/1.htm" target="_blank" title="搜索关于yum的文章" rel="nofollow">yum</a></li>
    
  • java
  • java home环境变量
  • 					</ul>
    				</div>
    				<div class="lbd clearfix">
    					
    
    				</div>
    				<div id="shoucang"></div>
    				<div class="xgcomm clearfix">
    					<h2>相关文章</h2>
    					<ul><li class="lbd clearfix"><div style=""><iframe width="820" frameborder="0" height="120" scrolling="no" src="https://pos.baidu.com/s?hei=120&amp;wid=820&amp;di=u4806172&amp;ltu=https%3A%2F%2Fwww.jb51.net%2Farticle%2F126921.htm&amp;psi=2ddabb725223b01435b6859881ac4611&amp;psr=1366x768&amp;cec=GBK&amp;dai=2&amp;tcn=1576417769&amp;cce=true&amp;col=en-US&amp;ari=2&amp;dis=0&amp;chi=2&amp;tlm=1576417768&amp;ps=6436x89&amp;dc=3&amp;ti=%E5%A6%82%E4%BD%95%E6%9F%A5%E6%89%BEYUM%E5%AE%89%E8%A3%85%E7%9A%84JAVA_HOME%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E8%AF%A6%E8%A7%A3_java_%E8%84%9A%E6%9C%AC%E4%B9%8B%E5%AE%B6&amp;cfv=0&amp;cmi=4&amp;ant=0&amp;drs=1&amp;ccd=24&amp;prot=2&amp;par=1366x738&amp;dtm=HTML_POST&amp;dri=0&amp;pis=-1x-1&amp;pcs=1349x635&amp;tpr=1576417768544&amp;cpl=3&amp;exps=111000&amp;pss=1349x7907&amp;cdo=-1&amp;cja=false" hidden="" style="display: none !important;"></iframe></div><script type="text/javascript" src="//jscode.jbzj.com/site/g/bx_d/production/hak_cq.js"></script>
    
  • spring快速入门实例教程

    spring快速入门实例教程

    这篇文章主要介绍了spring快速入门实例,主要分析了spring的基本配置与控制反转,对于spring的学习具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • Java多线程编程实现socket通信示例代码

    Java多线程编程实现socket通信示例代码

    这篇文章主要介绍了Java多线程编程实现socket通信示例代码,详细介绍了tcp、udp协议,以及基于socket的Java网络编程的相关内容及代码示例,代码测试可用,供大家参考。
    2017-10-10
  • spring+springmvc整合mabytis时mapper注入失败问题解决方法

    spring+springmvc整合mabytis时mapper注入失败问题解决方法

    这篇文章主要介绍了spring+springmvc整合mabytis时mapper注入失败问题解决方法 ,需要的朋友可以参考下
    2017-08-08
  • Java爬虫抓取视频网站下载链接

    Java爬虫抓取视频网站下载链接

    本文是通过JAVA获取优酷、土豆、酷6、6间房等视频,小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • Java源码解析HashMap简介

    Java源码解析HashMap简介

    今天小编就为大家分享一篇关于Java源码解析HashMap简介,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • navicatdesignquery.sql.bak系统找不到指定路径错误的解决方法

    navicatdesignquery.sql.bak系统找不到指定路径错误的解决方法

    今天小编就为大家分享一篇关于navicatdesignquery.sql.bak系统找不到指定路径错误的解决方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Freemarker如何生成树形导航菜单(递归)

    Freemarker如何生成树形导航菜单(递归)

    这篇文章主要为大家详细介绍了Freemarker采用的的方法生成树形导航菜单,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • JAVA实现双边决策的示例

    JAVA实现双边决策的示例

    本篇文章主要介绍了JAVA实现双边决策,介绍了双边决策的实现算法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2016-10-10
  • Java设计模式之工厂模式分析【简单工厂、工厂方法、抽象工厂】

    Java设计模式之工厂模式分析【简单工厂、工厂方法、抽象工厂】

    这篇文章主要介绍了Java设计模式之工厂模式,结合实例形式分析了简单工厂、工厂方法、抽象工厂等相关功能、实现与使用方法,需要的朋友可以参考下
    2018-04-04
  • 基于Java堆内存的10个要点的总结分析

    基于Java堆内存的10个要点的总结分析

    本篇文章是对Java堆内存的10个要点进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
				</div>
				原文地址:https://www.jb51.net/article/126921.htm
			  </div>
查看全文
  • 相关阅读:
    认识Cookie和状态管理
    python之requests库使用问题汇总
    如何掌握所有的程序语言--王垠
    非 GUI 模式运行 JMeter 压力测试
    Python 如何将字符串转为字典
    python之operator操作符函数
    python3使用xlrd、xlwt、xlutils、openpyxl、xlsxwriter操作excel
    《敏捷软件测试:测试人员与敏捷团队的实践指南》
    Jmeter跨线程组传递变量
    Jmeter获取当前时间、历史时间、未来时间的方式
  • 原文地址:https://www.cnblogs.com/jpfss/p/12046171.html
  • Copyright © 2011-2022 走看看