JRE 和 JDK 的区别是什么?:https://www.zhihu.com/question/20317448
JRE: Java Runtime Environment
JRE顾名思义是java运行时环境,包含了java虚拟机,java基础类库。是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的。
JDK:Java Development Kit
JDK顾名思义是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,jvisualvm等工具软件,还包含了java程序编写所需的文档和demo例子程序。如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。JRE根据不同操作系统(如:windows,linux等)和不同JRE提供商(IBM,ORACLE等)有很多版本,最常用的是Oracle公司收购SUN公司的JRE版本。
简单来说,JRE可以支撑Java程序的运行,包括JVM虚拟机(java.exe等)和基本的类库(rt.jar等),JDK可以支持Java程序的开发,包括编译器(javac.exe)、开发工具(javadoc.exe、jar.exe、keytool.exe、jconsole.exe)和更多的类库(如tools.jar)等。
OpenJDK 和 SunJDK
在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK.
那么到底什么是OpenJDK? OpenJDK和SunJDK有啥区别? https://www.zhihu.com/question/19646618
ubuntu环境变量的三种设置方法:https://blog.csdn.net/vertor11/article/details/70799971
Ubuntu设置环境变量并立即生效:https://www.cnblogs.com/zhangpengshou/p/3537619.html
Ubuntu中设置环境变量的几种方式及区别:http://blog.sina.com.cn/s/blog_77c6324101017xoe.html
Ubuntu 下 Sun/Oracle jdk 和 Sun/Oracle jre 安装以及环境变量设置
1. 下载 Sun/Oracle jdk 和 Sun/Oracle jre
下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html下载完成后使用 :tar -zxvf 文件名 解压。我解压在了 /opt/java/ 下。解压完成后,会生成 jdk 和 jre 对应文件夹。
2. 设置环境变量。
对于对vi不熟悉的用户使用gedit命令启动文本编辑器比起vi命令更方便:sudo gedit /etc/profile
在文件末尾新添加如下内容:
export JAVA_HOME=/opt/java/jdk-10.0.1 export JRE_HOME=/opt/java/jre-10.0.1 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${PATH}:${JAVA_HOME}/bin:${JRE_HOME}/bin
3. 使配置生效
执行命令:source /etc/profile
或者重启电脑即可。
4. 查看 Java 版本
如果安装正确,jdk 和 jre 则都是我们自己安装的版本
执行命令: java --version 和 javac --version
------------------------------------------- 扩展 ------------------------------------------------------
Linux 使用 update-alternatives 命令进行版本的切换
https://blog.csdn.net/JasonDing1354/article/details/50470109
ubuntu利用update-alternatives配置java:https://blog.csdn.net/yinlijun2004/article/details/53008035
设置默认jdk(假如有openjdk的话)
由于 Ubuntu 中可能会有默认的 jdk,如openjdk。假如有openjdk的话。所以,为了默认使用的是我们安装的jdk,还要进行如下工作(可以使用该命令安装其他命令,例如eclipse)。
执行代码:
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-10.0.1/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac /opt/java/jdk-10.0.1/bin/javac 300 sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-10.0.1/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac /opt/java/jdk-10.0.1/bin/javac 300 sudo update-alternatives --install /usr/bin/jar jar /opt/java/jdk-10.0.1/bin/jar 300 sudo update-alternatives --install /usr/bin/javah javah /opt/java/jdk-10.0.1/bin/javah 300 sudo update-alternatives --install /usr/bin/javap javap /opt/java/jdk-10.0.1/bin/javap 300通过上面步骤将我们安装的 jdk 加入 java 选择单。
然后执行代码:
sudo update-alternatives --config java sudo update-alternatives --config javac通过这一步选择系统默认的jdk
ubuntu 切换java环境,配置单独的用户环境
执行命令:sudo update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 auto mode 1 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 manual mode 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode 选择 1 然后服务器的全局变量java就是变成 java -version java version "1.7.0_121" OpenJDK Runtime Environment (IcedTea 2.6.8) (7u121-2.6.8-1ubuntu0.14.04.3) OpenJDK 64-Bit Server VM (build 24.121-b00, mixed mode)
卸载 Ubuntu 自带的 openjdk 的方法:
执行命令:sudo apt-get remove openjdk*