今天在自己的centos机子上安装jdk,发现以前的教程都比较旧了,很多东西都过时了。今天把自己安装的感受写一下。

判断是否安装

首先,我们得判断机子上是不是安装了jdk,好多人推荐使用java -version命令。我的计算机上使用java -version命令,内容如下:

java version "1.7.0_45"
OpenJDK Runtime Environment (rhel-2.4.3.2.el6_4-i386 u45-b15)
OpenJDK Server VM (build 24.45-b08, mixed mode)

这看起来好像我的机子中已经安装了jdk,但是当我使用javac时,会提示:

-bash: javac: command not found

这说明第一个java命令,不是安装的jdk中的java命令,而是在$PATH的所有路径下有一个可以执行的java文件,说明jdk还是没有正确安装。这个要特别注意。

安装jdk

  1. http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html中下载jdk的安装文件。由于我的Linux是32位的,因此我下载jdk-8u25-linux-i586.tar.gz文件。
  2. 新建/usr/java文件夹,将jdk-8u25-linux-i586.tar.gz放到该文件夹中,并将工作目录切换到/usr/java目录下。
  3. 执行命令tar -zxvf jdk-8u25-linux-i586.gz 进行解压,解压后发现/usr/java多了一个jdk1.8.0_25文件夹。
  4. 通过以上步骤,jdk就已经全部安装完成了。下面,就是环境变量的配置。

配置环境变量

  1. 使用vim /etc/profile编辑profile文件
  2. 在/etc/profile底部加入如下内容

    JAVA_HOME=/usr/java/jdk1.8.0_25
    PATH=$JAVA_HOME/bin:$PATH
    CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
    export PATH JAVA_HOME CLASSPATH

  3. 以上,环境变量配置完成。需要注意的是,PATH在配置的时候,一定要把$JAVA_HOME/bin放在前面,不然使用java命令时,系统会找到以前的java,再不往下找了。这样java这个可执行文件运行的目录其实不在$JAVA_HOME/bin下,而在其它目录下,会造成很大的问题。
  4. 还要注意,以前其它教程写的CLASSPATH=$JAVA_HOME/lib.tools.jar,不知道以前的版本是怎么样的,现在的版本是没有这样的jar包的
  5. 最后使用source /etc/profile让profile文件立即生效。

命令测试

  1. 使用javac命令,不会出现command not found错误
  2. 使用java -version,出现版本为java version "1.8.0_25"
  3. echo $JAVA_HOME, echo $CLASSPATH, echo $PATH,看看自己的配置是否都正确。

代码测试

在自己的工作目录下创建一个新文件Hello.java,写入如下内容:

public class Hello{
public static void main(String[] args){
System.out.println("Hello World");
}
}

执行命令如下,如果得到以下结果,说明jdk安装完成。

[gqq@pku ~/JavaProjects/test]$ javac Hello.java
[gqq@pku ~/JavaProjects/test]$ java -cp . Hello
Hello World

当然,我们安装的jdk8,应该测试下jdk8的特性。可以使用jdk8特有的stream来测试,代码如下:

import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate; public class TestLambda1 {
public static void main(String[] args) { // Aggregate Operations
List<String> myList = Arrays.asList("zhangsan", "lisi", "wangwu",
"liuliu");
myList.stream().filter(x -> x.contains("a")).map(x -> x.toUpperCase())
.forEach(x -> System.out.println(x));
}
}

使用以下命令运行,得到结果,说明安装没有问题。

[gqq@pku ~/JavaProjects/test]$ javac TestLambda.java
[gqq@pku ~/JavaProjects/test]$ java -cp . TestLambda
ZHANGSAN
WANGWU

centos6.5 安装JDK的更多相关文章

  1. 在CentOs6.5安装jdk

    Linux CentOS 6.5 中安装与配置JDK-7:http://jingyan.baidu.com/article/fc07f9891d186512ffe51935.html jdk7的下载: ...

  2. [转]CentOS6.3安装JDK和环境配置

    转自:http://www.linuxidc.com/Linux/2012-09/70780.htm 1.CentOS默认情况下,会安装OpenOffice之类的软件,这些软件需要Java的支持,默认 ...

  3. liunx centOS6.5安装jdk教程

    第一步:mkdir /usr/java/ --在/usr目录下新建一个java目录 第二步:cp jdk-7u25-linux-x64.rpm /usr/java/ --将JDK文件复制到/usr/j ...

  4. centos6.7 安装JDK

      1.卸载JDK 查看系统是否已安装JDK.一般的linux都默认使用了开源的openJDK.显示JDK版本信息,已经安装JDK,否则没有安装.命令行: [root@localhost ~]# ja ...

  5. 阿里云服务器CentOS6.9安装JDK

    1:首先查看系统有没有自带jdk rpm -qa | grep java 2:将存在的一一卸载 rpm -ev java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el6_9. ...

  6. 虚拟机centos6.5 --安装jdk

    1.首先卸载默认安装的openjdk,如下 rpm -qa | grep java #查看当前是否已经安装了跟java有关的包 yum -y remove java #卸载 rpm -qa |grep ...

  7. CentOS6.4 安装JDK

    1.下载JDK,这里用的是jdk-7u65-linux-x64.tar.gz,请到官网上下载. 2.清除默认的JDK,yum remove java 3.解压文件 tar -xzf jdk-7u65- ...

  8. Centos6.4安装JDK

    链接地址:http://www.iteye.com/topic/1130311 1.先看看OpenJDK的安装包 $ rpm -qa |grep javatzdata-java-2013b-1.el6 ...

  9. centos6.X安装jdk

    1.查看Linux自带的JDK是否已安装(如果安装则卸载CentOS已安装的低版本) [root@localhost soft]# java -version java version "1 ...

随机推荐

  1. Travel(最短路)

    Travel The country frog lives in has nn towns which are conveniently numbered by 1,2,…,n1,2,…,n. Amo ...

  2. 图片热区——map的用法

    <area>标记主要用于图像地图,通过该标记可以在图像地图中设定作用区域(又称为热点),这样当用户的鼠标移到指定的作用区域点击时,会自动链接到预先设定好的页面.其基本语法结构如下: 1 & ...

  3. Java你不知道的那些事儿—Java隐藏特性

    转载自:http://www.cnblogs.com/lanxuezaipiao/p/3460373.html 每 种语言都很强大,不管你是像我一样的初学者还是有过N年项目经验的大神,总会有你不知道的 ...

  4. jquery拓展插件-popup弹窗

    css:<style> /* 公共弹出层 */ .popWrap{position: fixed;left: 0;top: 0; width: 100%;height: 100%;z-in ...

  5. offset,scroll,client系列

    offsetHeight: 元素高,height+border+paddingoffsetWidth: 元素宽,width+border+paddingoffsetTop: 距离offsetParen ...

  6. Linux用户相关文件之密码文件

    1.文件地址: /etc/shadow ----------. 1 root root 842 10月 6 13:09 /etc/shadow 2.文件内容: xiaol_1:$6$NdCAnK3y$ ...

  7. Android 4.4 Kitkat 音频实现及简要分析

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jingxia2008/article/details/26701899 在 Android 4.4 ...

  8. python并发编程之多进程1--(互斥锁与进程间的通信)

    一.互斥锁 进程之间数据隔离,但是共享一套文件系统,因而可以通过文件来实现进程直接的通信,但问题是必须自己加锁处理. 注意:加锁的目的是为了保证多个进程修改同一块数据时,同一时间只能有一个修改,即串行 ...

  9. MySQL数据库(8)_MySQL数据库总结

    sql语句规范 sql是Structured Query Language(结构化查询语言)的缩写.SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言. 在使用它时,只需要发出“做什么” ...

  10. 转:CWebBrowser2去除边框、滚动条、右键菜单

    http://blog.csdn.net/tangyin025/article/details/8675513 添加CWebBrowser2类 右键项目-〉Add-〉Class...-〉MFC-〉MF ...