Oracle/Sun JDK与OpenJDK的区别和联系
OpenJDK原是SunMicrosystems公司为Java平台构建的Java开发环境(JDK)的开源版本,完全自由,开放源码。Sun Microsystems公司在2006年的JavaOne大会上称将对Java开放源代码,于2009年4月15日正式发布OpenJDK。甲骨文在 2010 年收购SunMicrosystem之后接管了这个项目。
Oracle/Sun JDK里面包含的JVM是HotSpotVM,HotSpot VM只有非常非常少量的功能没有在OpenJDK里,那部分在Oracle内部的代码库里。这些私有部分都不涉及JVM的核心功能。所以说,Oracle/Sun JDK与OpenJDK其实使用的是同一个代码库。
从一个Oracle内部员工的角度来看,当他要构建OracleJDK时,他同样需要先从http://hg.openjdk.java.net签出OpenJDK,然后从Oracle内部的代码库签出私有的部分,放在OpenJDK代码下的一个特定目录里,然后构建。
值得注意的是,Oracle JDK只发布二进制安装包,而OpenJDK只发布源码。
安装
yum安装
查看可安装的JDK版本:
yum search java-1.8
java-1.8.0-openjdk.i686 : OpenJDK Runtime Environment
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.8.0-openjdk-accessibility.i686 : OpenJDK accessibility connector
java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
java-1.8.0-openjdk-accessibility-debug.i686 : OpenJDK accessibility connector
: for packages with debug on
java-1.8.0-openjdk-accessibility-debug.x86_64 : OpenJDK accessibility connector
: for packages with debug on
安装
yum install java-1.8.0-openjdk.x86_64
安装完之后默认路径为JDK安装在/usr/lib/jvm/文件夹下
官网下载jdk包
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/server-jre8-downloads-2133154.html
下载到服务器上
wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/server-jre-8u181-linux-x64.tar.gz
解压
tar -zxvf server-jre-8u181-linux-x64.tar.gz
移动到指定目录下
mv -f jdk1.8.0_181/ /usr/local
设置环境变量
不管是yum安装还是手动下载都需要配置环境变量
永久保存环境变量到服务器需要编辑/etc/profile
vim /etc/profile
然后把下面内容追加到问价的末尾
export JAVA_HOME=/usr/local/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
解释:
- 只需要改第一行“export JAVA_HOME=”后的部分为你的JDK路径,注意末尾不要加“/”。其他都无需更改。
- exprot命令用于将shell变量输出为环境变量,如只是在shell中执行export命令得到的环境变量只是临时的,重新登陆后消失。
- “:”冒号,linux中用于分割路径,Windows中用“;” 分割。,在此分割JAVA_HOME和其他环境变量($PATH)
- CLASSPATH中的 “.” 不能丢失。CLASSPATH指引到tools.jar,才可以在任意目录下用“javac”命令
执行生效
source /etc/profile
参考
https://blog.csdn.net/wangjianno2/article/details/52015442
https://blog.csdn.net/x541211190/article/details/74786393
https://blog.csdn.net/x541211190/article/details/74786393