• Linux下配置JDK


      下面以CentOS为例,详细说一下Linux下配置JDK的过程

      首先按照约定俗成的习惯,将jdk放在/usr/local/java下,首先进入/usr/local然后新建一个目录java

      

      然后我们需要下载最新的jdk程序包,可以在本地下载好然后上传到服务器中也可以在服务器中直接下载,如果在本地下载,应该访问Oracle官网下载页面

      网址是:http://www.oracle.com/technetwork/java/javase/downloads/index.html

      

      点击Java Platform (JDK) 8u65 / 8u66下载进入最新版本下载页面

      然后选择同意协议,下载对应的Linux版本,我这里下载的是:64位的jdk-8u65-linux-x64.tar.gz

      

      下载完毕后,上传到服务器即可,或者直接用命令行进行在线下载,只是不能直接用wget url这样下载,因为没有同意协议这一步,所以应该设置一个同意协议的http头用来发送cookie请求,命令如下:

    wget --no-check-certificate --no-cookie --header "Cookie: oraclelicense=accept-securebackup-cookie;" http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-x64.tar.gz

    后面就是下载链接,现在稍微等待屏幕滚动进度条下载完毕就可以了

      

      然后我们将归档文件释放:

    tar xvf jdk-8u65-linux-x64.tar.gz

      

      释放后,可以看到目录,现在可以删除下载的.tar.gz文件了

      

      释放完毕就算安装好了,接下来配置环境变量就可以了,用vim打开/etc/profile文件来进行全局配置

    vim /etc/profile

      

      打开之后光标移到最后一行,进入编辑模式,最后一行可能会有原来配置好的PATH,所以我们先在PATH后面追加一个冒号:,然后追加$JAVA_HOME/bin,然后另起一行继续编辑:

    JAVA_HOME=/usr/local/java/jdk1.8.0_65
    JRE_HOME=/usr/local/java/jdk1.8.0_65/jre
    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
    export JAVA_HOME JRE_HOME CLASSPATH

      

      这里多配置了一个JRE_HOME后面写起来更简单了,其实可以自己灵活的定义,把PATH写在最上面可以避免多版本存在时不能覆盖旧版本的问题,因为环境变量文件系统读取时是顺序加载的,当然我们这里是纯净的系统安装jdk,如果有多个jdk建议卸载原有的jdk然后再进行安装,避免版本问题

      到现在环境变量配置好了,保存退出vim,然后利用source命令让文件立即生效

    source /etc/profile

      

      ok,到现在jdk全部搞定,现在在任意一个地方输入java、java -version、javac都可以正确执行了,也可以编译一个简单的源码文件试试看

      下面补充一下,/etc/profile是属于全局的环境变量,也就是说这种配置对于任何用户任何应用都是有效的,对于应用程序来说任何时候都可以使用,但是由于我们把PATH变量写在上面了,所以会出现一个问题,我们每次通过ssh连接终端的时候都要source一下/etc/profile才可以生效,因为$JAVA_HOME已经定义,但是PATH没有赋值,所以需要source,这样比较麻烦,所以推荐一种通用的方式来写,如下:

    JAVA_HOME=/usr/local/java/jdk1.8.0_65
    JRE_HOME=/usr/local/java/jdk1.8.0_65/jre
    CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
    export JAVA_HOME JRE_HOME CLASSPATH
    
    export PATH=$PATH:$JAVA_HOME/bin

      按照这样的话,不管后来要添加多少环境变量,都是把path写在最下面,并且直接在$PATH后追加新的PATH即可,不会影响原有的任何变量,并且保存并source一次即可永久生效,建议使用这种方法

      另外还有一种方法是配置用户目录下对应的环境变量文件,这个是对于bash默认只针对对应的用户,也就是路径~/.bash_profile的文件,对于root用户就是/root/.bash_profile文件,那么对于用户来说,只要source一次就会将用户变量永久写入内存,这个和全局的是不一样的,全局的默认只会导入一次,而用户的导入之后会一直伴随用户,所以配置用户变量也是一种方法,配置方法是用vim /root/.bash_profile打开这个文件进行编辑,如果PATH变量已经存在就直接追加就可以了,具体代码如下:

    PATH=$PATH:$JAVA_HOME/bin
    export PATH
    JAVA_HOME=/usr/local/java/jdk1.8.0_65
    export JAVA_HOME
    CLASSPATH=.:$JAVA_HOME/lib
    export CLASSPATH

      

      保存之后用source /root/.bash_profile让文件生效就行了

      由于只是简单地命令行操作,所以CLASSPATH就只写lib目录就可以了,不会影响应用程序的任何使用,现在无论什么时候连接终端,jdk开发环境的命令都可以正常使用了

  • 相关阅读:
    ubuntu 15.04默认root用户登陆
    hive的not in
    Spark 1.4.1中Beeline使用的gc overhead limit exceeded
    Sequoiadb该如何选择合适的SQL引擎
    scala的object知识点
    scala中同步块
    英语口语练习系列-C36-城市-谈论活动-登高
    英语口语练习系列-C35-马戏-谈论语言-己亥杂诗
    英语口语练习系列-C34-儿童-谈论物品和人-武陵春
    英语口语练习系列-C33-露营-谈论日期-离思
  • 原文地址:https://www.cnblogs.com/freeweb/p/5135270.html
Copyright © 2020-2023  润新知