美文网首页Java
Linux CentOS7.0下JAVA安装和配置环境变量

Linux CentOS7.0下JAVA安装和配置环境变量

作者: 3f29eb5edacd | 来源:发表于2019-02-10 17:49 被阅读7次

    一.前言:

    CentOS7.0虽然自带JDK1.7和1.8,运行“java -version”命令也可以看到版本信息,但是jdk的安装环境不全,比如缺少tool.jar和dt.jar等,这就导致“javac”等这样的命令即便配置了环境变量也不能用,所以要重新安装jdk,并且配置环境变量,并解决“javac”命令不可用的问题。

    二.下载安装JDK

    1.CentOS下,首先让当前用户获取root权限,打开终端输入命令:

    su root
    

    2.查看可安装的JDK版本:

    yum search java-1.8
    

    在查询结果列表如下:

    java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment
    java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
    java-1.8.0-openjdk-demo.x86_64 : OpenJDK Demos
    java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment
    java-1.8.0-openjdk-headless.x86_64 : The OpenJDK runtime environment without audio and video support
    java-1.8.0-openjdk-javadoc.noarch : OpenJDK API Documentation
    java-1.8.0-openjdk-src.x86_64 : OpenJDK Source Bundle
    

    3.安装这一款,命令:

     yum -y install java-1.8.0-openjdk-devel.x86_64 
    

    安装完成提示:

    Installed:
      java-1.8.0-openjdk-devel.x86_64 1:1.8.0.191.b12-1.el7_6                          
    
    Dependency Installed:
      copy-jdk-configs.noarch 0:3.3-10.el7_5                                           
      dejavu-fonts-common.noarch 0:2.33-6.el7                                          
      dejavu-sans-fonts.noarch 0:2.33-6.el7                                            
      fontconfig.x86_64 0:2.13.0-4.3.el7                                               
      fontpackages-filesystem.noarch 0:1.44-8.el7                                      
      giflib.x86_64 0:4.1.6-9.el7                                                      
      java-1.8.0-openjdk.x86_64 1:1.8.0.191.b12-1.el7_6                                
      java-1.8.0-openjdk-headless.x86_64 1:1.8.0.191.b12-1.el7_6                       
      javapackages-tools.noarch 0:3.4.1-11.el7                                         
      libICE.x86_64 0:1.0.9-9.el7                                                      
      libSM.x86_64 0:1.2.2-2.el7                                                       
      libXcomposite.x86_64 0:0.4.4-4.1.el7                                             
      libXext.x86_64 0:1.3.3-3.el7                                                     
      libXi.x86_64 0:1.7.9-1.el7                                                       
      libXrender.x86_64 0:0.9.10-1.el7                                                 
      libXtst.x86_64 0:1.2.3-1.el7                                                     
      libfontenc.x86_64 0:1.1.3-3.el7                                                  
      libxslt.x86_64 0:1.1.28-5.el7                                                    
      lksctp-tools.x86_64 0:1.0.17-2.el7                                               
      python-javapackages.noarch 0:3.4.1-11.el7                                        
      python-lxml.x86_64 0:3.2.1-4.el7                                                 
      ttmkfdir.x86_64 0:3.0.9-42.el7                                                   
      tzdata-java.noarch 0:2018i-1.el7                                                 
      xorg-x11-font-utils.x86_64 1:7.5-21.el7                                          
      xorg-x11-fonts-Type1.noarch 0:7.5-9.el7                                          
    
    Dependency Updated:
      freetype.x86_64 0:2.8-12.el7_6.1           nspr.x86_64 0:4.19.0-1.el7_5         
      nss.x86_64 0:3.36.0-7.1.el7_6              nss-softokn.x86_64 0:3.36.0-5.el7_5  
      nss-softokn-freebl.x86_64 0:3.36.0-5.el7_5 nss-sysinit.x86_64 0:3.36.0-7.1.el7_6
      nss-tools.x86_64 0:3.36.0-7.1.el7_6        nss-util.x86_64 0:3.36.0-1.1.el7_6   
    
    Complete!
    

    记住上面“已安装”后面的文件夹名称,不要搞混了。我们用此文件所在的路径作为JAVA_HOME。切记!

    4.安装结束后,浏览下安装后的目录:

    JDK安装在/usr/lib/jvm/文件夹下。在这个文件夹下有多个JDK版本,通过已安装成功的提示信息里面的JDK版本,找到我们刚安装的版本文件夹。

    如:我这里找到新安装的JDK文件夹是:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64

    cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/lib
    
    ls
    

    查询结果:

    amd64  ct.sym  dt.jar  ir.idl  jconsole.jar  jexec  orb.idl  sa-jdi.jar  tools.jar
    

    终于见到了久违的tool.jar 和dt.jar包。因为centOS 7.0自带的JDK压根就没有这些jar包,所以不管你环境变量配置正确与否,“javac”命令也不能用,因为这个命令依赖tool.jar这个jar包。

    5.接下来配置环境变量:

    ①获取JDK的安装路径:

    第四步中,我们所在的文件夹是/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64/lib中。

    输入下面两条命令(注意cd后有空格),获取到的就是JDK的安装目录:

    cd .
    
    pwd
    

    这个路径,即:JAVA_HOME

    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64
    

    ②使用命令编辑环境变量文件:

    vim /etc/profile
    

    Vim开文件后,键盘按“E”,进入编辑模式,然后按几下键“pagedown”,来到文件底部。

    ③将下面的JAVA_HOME修改为刚获取的JAVA_HOME路径,然后拷贝到文件底部。

    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    

    解释:

    • 只需要改第一行“export JAVA_HOME=”后的部分为你的JDK路径,注意末尾不要加“/”。其他都无需更改。
    • exprot命令用于将shell变量输出为环境变量
    • “:”冒号,linux中用于分割路径,Windows中用“;” 分割。,在此分割JAVA_HOME和其他环境变量($PATH)
    • CLASSPATH中的 “.” 不能丢失。CLASSPATH指引到tools.jar,才可以在任意目录下用“javac”命令

    ④输入完成后,按键“ESC”切换到Vim的命令模式,输入命令(冒号,按住“SHIFT+:”即可),保存退出

    :wq!
    

    6.使环境变量立即生效命令:

    source /etc/profile
    

    7.检查环境变量是否配置成功:

    在任意的文件路径下,终端输入命令:

    javac
    

    显示结果如下,环境变量配置成功:

    [root@localhost java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64]# 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 <路径>        指定查找注释处理程序的位置
      -d <目录>                    指定放置生成的类文件的位置
      -s <目录>                    指定放置生成的源文件的位置
      -implicit:{none,class}     指定是否为隐式引用文件生成类文件
      -encoding <编码>             指定源文件使用的字符编码
      -source <发行版>              提供与指定发行版的源兼容性
      -target <发行版>              生成特定 VM 版本的类文件
      -version                   版本信息
      -help                      输出标准选项的提要
      -A关键字[=值]                  传递给注释处理程序的选项
      -X                         输出非标准选项的提要
      -J<标记>                     直接将 <标记> 传递给运行时系统
      -Werror                    出现警告时终止编译
      @<文件名>                     从文件读取选项和文件名
    

    若提示,“bash: javac: 未找到命令…”,则说明配置失败,检查环境变量的路径是否正确,反复尝试下,祝你好运。

    作者:大脑补丁
    来源:CSDN
    原文:https://blog.csdn.net/x541211190/article/details/74786393
    版权声明:本文为博主原创文章,转载请附上博文链接!

    相关文章

      网友评论

        本文标题:Linux CentOS7.0下JAVA安装和配置环境变量

        本文链接:https://www.haomeiwen.com/subject/ipdxeqtx.html