Java SE 6 vs. JRE 1.6 vs. JDK 1.6 - 这些是什么意思?

时间:2008-10-30 15:10:10

标签: java

我看到许多不同的Java术语浮出水面。我需要安装JDK 1.6。据我所知,Java 6 == Java 1.6。但是,当我安装Java SE 6时,我得到一个报告为11.0版本的JVM!谁能解决这种疯狂?

6 个答案:

答案 0 :(得分:157)

  • JDK - Java Development Kit
  • JRE - Java运行时环境
  • Java SE - Java标准版
SE定义了一组功能和功能;有更复杂的版本(企业版 - EE)和更简单的版本(Micro Edition - ME - 适用于移动环境)。

JDK包括开发Java应用程序所需的编译器和其他工具; JRE没有。因此,要运行其他人提供的Java应用程序,您需要JRE;要开发Java应用程序,需要JDK。

被修改: 正如Chris Marasti-Georg在评论中指出的那样,您可以在Sun的Java网站上找到大量信息,特别是来自Java SE部分,(第二个选项,Java SE开发工具包(JDK)) )6更新10)。


编辑2011-04-06: 世界变了,Java现在由甲骨文管理,后者收购了Sun.今年晚些时候,sun.com域应该是黑暗的。新页面(基于重定向)是Oracle Tech Network上的Java页面。 (另见java.com。)


编辑2013-01-11:世界不断转向(尽管2012-12-21),并且看,JRE 6即将到达支持终点。 Oracle表示在2013年2月之后不再公开更新Java 6。

在给定版本的Java中,此答案仍然有效。 JDK是Java Development Kit,JRE是Java Runtime Environment,Java SE是标准版,依此类推。但版本6(1.6)正在变得过时。

编辑2015-04-29:随着围绕太阳的另外几次革命,现在是时候结束对Java SE 7的支持了。 2015年4月,Oracle affirmed不再向Java SE 7提供公开更新.Java SE 8公开更新的暂定结束日期为2017年3月,但该结束日期可能会发生变化(稍后,不会更早) )。

答案 1 :(得分:98)

这可能对某人有所帮助:

我正在我的系统上安装最新的Java用于开发,目前它是Java SE 7.现在,让我们深入研究这种“疯狂”,就像你说的那样......

所有这些都是相同的(当开发人员谈论Java for development)时:

  • Java SE 7
  • Java SE v1.7.0
  • Java SE Development Kit 7

从Java v1.5开始:

  • v5 = v1.5。
  • v6 = v1.6。
  • v7 = v1.7。

我们可以假设这将保留给未来的版本。

接下来,对于开发人员,请下载JDK,而不是JRE。

JDK将包含JRE。如果您需要JDK和JRE,请获取JDK。两者都将从单个JDK安装中安装,如下所示。

如上所述:

  • JDK = Java开发工具包(开发人员需要这个,如果你用Java编写代码就是这个)
  • JRE = Java运行时环境(用户需要这个,这是今天的每个计算机用户)
  • Java SE = Java标准版

以下是我遵循的一步一步的链接(一步到下一步,这是一次下载)下载Java for Development(JDK):

  1. 访问“Java SE下载”:http://www.oracle.com/technetwork/java/javase/downloads/index.html
  2. 点击“JDK下载”并访问“Java SE开发工具包7下载”:http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html(请注意,在步骤1的链接后,您将转到另一个链接,因为JDK 1.7更新,更高版本,现在出来)
  3. 接受协议:)
  4. 单击“Java SE Development Kit 7(Windows x64)”:http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-windows-x64.exe(对于我的64位Windows 7系统)
  5. 您现在正在为您的系统下载(希望是最新的)JDK! :)
  6. 请注意,以上链接仅供参考,向您展示下载JDK所需的逐步方法。

    使用默认设置安装到:

    • “C:\ Program Files \ Java \ jdk1.7.0 \”(JDK)
    • “C:\ Program Files \ Java \ jre7 \”(JRE)< ---为什么要问一个新的安装文件夹?这是JRE!

    请记住,从上面看,JDK包含JRE,如果您知道它们是什么,这是有意义的。再次,见上文。

    安装完成后,请仔细检查“C:\ Program Files \ Java”以查看这两个文件夹。现在你知道它们是什么以及为什么它们在那里。

    我知道我是为新手写的,但我喜欢详细了解事情,所以我希望这会有所帮助。

答案 2 :(得分:53)

当您键入“java -version”时,您会看到三个版本号 - java版本(我的,即“1.6.0_07”),Java SE运行时环境版本(“build 1.6.0_07-b06” )和HotSpot版本(在我的版本,即“build 10.0-b23, mixed mode"”。我怀疑你看到的“11.0”是HotSpot版本。

更新:HotSpot是(或曾经是,现在他们似乎用它来表示整个VM)内置于Java虚拟机的即时编译器。上帝只知道为什么Sun给它一个单独的版本号。

答案 3 :(得分:17)

Java版本的简短且可能不正确的历史

  • Java是一个平台。它由两个产品组成 - 软件开发工具包和运行时环境。

  • 当Java首次发布时,它显然被称为 Java 。如果你是开发人员,你也知道版本,这是正常的" 1.0"后来是" 1.1"。作为平台一部分的两个产品也被命名为:

    • JDK - " Java Development Kit"
    • JRE - " Java运行时环境"
  • 显然版本1.2中的更改非常重要,以至于他们开始将平台称为 Java 2

    • 默认"发布"该平台被赋予了绰号"标准"与兄弟姐妹形成鲜明对比。所以你有三个平台:

      • " Java 2标准版(J2SE)"
      • " Java 2 Enterprise Edition(J2EE)"
      • " Java 2移动版(J2ME)"
    • JDK正式更名为" Java 2软件开发工具包"。

  • 当1.5版出现时,诉讼决定他们需要"重新命名"产品。所以Java平台有两个版本 - 产品版本" 5"和开发人员版本" 1.5" (是的,明确提到规则 - "删除' 1。')。然而," 2"保留在名称中。所以现在该平台被正式称为" Java 2平台标准版5.0(J2SE 5.0)"

    • 诉讼也意识到开发社区没有重新命名JDK。但他们没有回复他们的变化,而是决定放弃" 2"从单个产品的名称,现在变为" J2SE开发工具包5.0(JDK 5.0)" " J2SE Runtime Environment 5.0(JRE 5.0) )"
  • 当1.6版出来时,有人意识到名字中有两个数字很奇怪。所以他们决定完全放弃2(以及" .0"后缀),最后得到" Java平台,标准版6(Java SE 6)和#34 ; 包含" Java SE开发工具包6(JDK 6)" " Java SE运行时环境6(JRE 6)& #34;

  • 版本1.7没有做任何愚蠢的事情。如果我不得不猜测,下一个重大变化是放弃" SE",以便循环完成,JDK再次被称为" Java开发工具包"。

注释

  • 为简单起见,省略了一堆商标标志。因此,假设Java™,JDK™和JRE™。

  • 似乎无法呈现嵌套列表。

参考

后记

只需删除" 1。"来自javac -versionjava -version打印的版本,你很高兴。

答案 4 :(得分:4)

随着Java 5的发布,产品版本与开发人员版本不同,如here所述

答案 5 :(得分:3)

Java SE Runtime适用于最终用户,因此您需要Java JRE版本,Java的第一个版本是1,然后是1.1 - 1.2 - 1.3 - 1.4 - 1.5 - 1.6等,通常每个版本都按版本命名,因此JRE 6表示Java jre 1.6,无论如何都有更新版本,例如1.6 update 45,名为java jre 6u45。

据我所知,他们更倾向于使用数字6而不是使用1.6来更好地反映成熟度,稳定性,可扩展性,安全性等等