天天看点

JDK你选哪个?

jdk

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。

SE(JavaSE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。

EE(JavaEE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE。从2018年2月26日开始,J2EE改名为Jakarta EE 。

ME(J2ME),micro edition,主要用于移动设备、嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME。

没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE。

JDK你选哪个?
JDK你选哪个?

openjdk

OpenJDK是一款只能运行在i386 和AMD-64机器上的软件。

OpenJDK在2013年发展迅速,被著名IT杂志SD Times评选为2013 SD Times 100,位于“极大影响力”分类第9位。

JDK你选哪个?

OpenJDK和JDK区别

简单来说jdk从7开始,弄出一个可以自由使用的公共版本(openjdk)。

原来继续分为个人版(研究使用)和企业(商用)是有版权的。

JDK你选哪个?

1,授权协议的不同

    OpenJDK 采用 GPL V2 协议放出,而 JDK 则采用 JRL 放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2 允许在商业上使用,而 JRL 只允许个人研究使用。

2,OpenJDK 不包含 Deployment(部署)功能

    部署的功能包括:Browser Plugin、Java Web Start、以及 Java 控制面板,这些功能在 OpenJDK 中是找不到的。

3,OpenJDK 源代码不完整

    由于 SUN JDK 的一部分源代码因为产权的问题无法开放 OpenJDK 使用,其中最主要的部份就是 JMX 中的可选元件 SNMP部份的代码。因此这些不能开放的源代码将它作成 plug,以供 OpenJDK 编译时使用,你也可以选择不要使用 plug。而 Icedtea 则为这些不完整的部分开发了相同功能的源代码(OpenJDK6),促使 OpenJDK 更加完整。

4,部分源代码用开源代码替换

    由于产权的问题,很多产权不是 SUN 的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用 Free Type 代替。

5,OpenJDK 只包含最精简的 JDK

    OpenJDK 不包含其他的软件包,比如 Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。

6,不能使用 Java 商标

    这个很容易理解,在安装 OpenJDK 的机器上,输入“java -version”显示的是 OpenJDK,但是如果是使用 Icedtea 补丁的 OpenJDK,显示的是 java。