openjdk、oracle jdk区别
- openjdk是jdk的开放原始码版本
- 授权协议的不同
openjdk采用GPL V2协议放出,而JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用 - OpenJDK不包含Deployment(部署)功能
部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在Openjdk中是找不到的 - OpenJDK源代码不完整
在采用GPL协议的Openjdk中,sun jdk的一部分源代码因为产权的问题无法开放openjdk使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。因此这些不能开放的源代码 将它作成plug,以供OpenJDK编译时使用,你也可以选择不要使用plug。而Icedtea则为这些不完整的部分开发了相同功能的源代码 (OpenJDK6),促使OpenJDK更加完整 - 部分源代码用开源代码替换
由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替 - openjdk只包含最精简的JDK
OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入 - 不能使用Java商标
在安装openjdk的机器上,输入“java -version”显示的是openjdk
window 安装openjdk11
-
下载openjdk安装包
下载地址:http://jdk.java.net/archive/
-
解压到本地磁盘
-
配置环境变量
右键单击桌面如图所示的图标后按R或者选择属性:
展开如下所示信息,点击更改设置,按提示进行操作:
展开后点击新建:
变量名为JAVA_HOME,变量值,必须是自己装jdk时的路径,比如我的安装路径是C:\Program Files (x86)\Java\jdk-11路径问题也需要注意
接下来找到“CLASSPATH”,没有的话就“新建”,变量名为CLASSPATH变量值%JAVA_HOME%\lib
在系统变量区域,选择Path,点击下面的编辑按钮,在弹出的框中选择新建,输入%JAVA_HOME%\bin
-
验证
在命令提示符中输入java -version
linux安装openjdk11 -
下载openjdk安装包
下载地址:http://jdk.java.net/archive/
-
解压
tar -zxvf openjdk-11+28_linux-x64_bin.tar.gz
- 配置环境变量
$ vi /etc/profile
----------------------------------------------------------------------------------
末尾增加如下内容(根据自己jdk目录修改):
export JAVA_HOME=/usr/local/jdk-11
export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
----------------------------------------------------------------------------------
- 使配置生效
source /etc/profile # 使配置文件生效
- 验证
java -version
----------------------------------------------------------------------------------
openjdk version "11" 2018-09-25
OpenJDK Runtime Environment 18.9 (build 11+28)
OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)
----------------------------------------------------------------------------------