如何在linux中配置java环境变量?
第一步: 解压下载的*.tar.gz文件到自己想要安装的目录中(/opt/java8)
sudo tar -zxv -f jdk-8u181-linux-x64.tar.gz -C /opt/java8/
第二步: 配置环境变量
- 修改profile文件
vim /etc/profile
- 在文件末尾编写如下内容:
export JAVA_HOME=/opt/java8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
第三步: 执行profile文件
soure /etc/profile
第四步: 检查安装
java -version
jdk, jre, jvm之间的关系是什么?
jvm是java可以跨多平台的关键。
- 记得曾有人说过:想要使两个紧密耦合的东西可以解耦的办法,就是在这两者之间加上一个中间层。jvm就是软件代码与各操作平台之间的中间层
- java代码先被编译成class文件,然后这些class文件再由jvm去执行
jre是java的运行时环境。
- jre中有bin,lib两个文件夹。可以理解为 bin就是jvm, 而lib就是jvm执行class文件时所必需的类库
- 光有jvm还不能执行class文件,所以jre才是java的运行时环境
- jre中是java运行时环境,它不包含编译器,即如果只有jre还不能将java代码编成class文件
jdk是java的开发环境。
- jdk中包含了jre,还有许多基础工具包。如:lang,util,io等
- jdk中包含了编译器 javac,这样才可以将java代码编译成class文件
总得来说:
1. jdk包含了jre, jre包含了jvm
2. java代码先由jdk编译成class文件,class文件最终由jvm执行,但jvm执行时又要一定类库支持,也就是说:class的运行环境是jre
3. jdk两个重要的作用:1)提供基础类库为开发者使用 2)包含编译器,可以将java代码编译成class文件