【发布时间】:2010-09-20 00:20:45
【问题描述】:
我看到很多不同的 Java 术语在流传。我需要安装 JDK 1.6。我的理解是 Java 6 == Java 1.6。但是,当我安装 Java SE 6 时,我得到一个报告为 11.0 版的 JVM!谁能解决这个疯子?
【问题讨论】:
-
有一个很好的Java Conceptual Diagram(带有可点击的链接)也可以提供帮助。
标签: java
我看到很多不同的 Java 术语在流传。我需要安装 JDK 1.6。我的理解是 Java 6 == Java 1.6。但是,当我安装 Java SE 6 时,我得到一个报告为 11.0 版的 JVM!谁能解决这个疯子?
【问题讨论】:
标签: java
SE 定义了一组能力和功能;有更复杂的版本(企业版 - EE)和更简单的版本(微型版 - ME - 用于移动环境)。
JDK 包括开发 Java 应用程序所需的编译器和其他工具; JRE 没有。因此,要运行其他人提供的 Java 应用程序,您需要 JRE;要开发 Java 应用程序,您需要 JDK。
已编辑: 正如 Chris Marasti-Georg 在评论中指出的那样,您可以在 Sun 的 Java 网站上找到大量信息,特别是在 Java SE 部分,(第二个选项,Java SE Development Kit (JDK) 6 Update 10 )。
2011-04-06 编辑:
世界发生了翻天覆地的变化,Java 现在由收购 Sun 的 Oracle 管理。今年晚些时候,sun.com 域应该会变暗。新页面(基于重定向)是 Oracle 技术网络上的 Java 页面。 (另见java.com。)
2013 年 1 月 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 月结束,但该结束日期可能会发生变化(稍后,而不是更早)。
【讨论】:
这可能对某人有帮助:
我正在我的系统上安装最新的 Java 进行开发,目前它是 Java SE 7。现在,让我们深入了解这个“疯狂”,正如你所说的......
所有这些都是相同的(当开发人员谈论 Java 进行开发时):
从 Java v1.5 开始:
我们可以假设这将在未来的版本中保留。
接下来,对于开发者来说,下载 JDK,而不是 JRE。
JDK 将包含 JRE。如果需要 JDK 和 JRE,请获取 JDK。两者都将从单个 JDK 安装中安装,如下所示。
正如上面提到的:
这是我下载 Java 进行开发 (JDK) 所遵循的分步链接(一步通向下一步,这都是一次下载):
请记住,以上链接仅供参考,向您展示下载 JDK 所需的分步方法。
并使用默认设置安装到:
请记住,上面提到的 JDK 包含 JRE,如果您知道它们都是什么,那么这是有道理的。再次,见上文。
安装后,仔细检查“C:\Program Files\Java”以查看这两个文件夹。现在您知道它们是什么以及它们存在的原因了。
我知道我是为新手写的,但我喜欢详细了解事情,所以我希望这会有所帮助。
【讨论】:
当您键入“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 给它一个单独的版本号。
【讨论】:
Java 是一个平台。它由两个产品组成——软件开发工具包和运行时环境。
当 Java 首次发布时,它显然只是称为 Java。如果您是开发人员,您也知道版本,即普通的“1.0”和后来的“1.1”。作为平台一部分的两种产品也被命名:
显然 1.2 版的变化如此重大,以至于他们开始将该平台称为 Java 2。
平台的默认“发行版”被赋予绰号“标准”,以与其兄弟姐妹进行对比。所以你有三个平台:
JDK 正式更名为“Java 2 Software Development Kit”。
当 1.5 版问世时,西装决定他们需要“重新命名”产品。所以Java平台有两个版本——产品版本“5”和开发者版本“1.5”(是的,明确提到了规则——“去掉'1。')。但是,“2”被保留在名称。所以现在平台正式命名为“Java 2 Platform Standard Edition 5.0 (J2SE 5.0)”。
当 1.6 版发布时,有人意识到名称中有两个数字很奇怪。所以他们决定完全删除 2(和“.0”后缀),我们最终得到包含 ”的 “Java Platform, Standard Edition 6 (Java SE 6)” Java SE 开发工具包 6 (JDK 6)” 和 “Java SE 运行时环境 6 (JRE 6)”。
1.7 版没有做任何愚蠢的事情。如果我不得不猜测,下一个重大变化将是删除“SE”,这样循环就完成了,JDK 再次被称为“Java 开发工具包”。
为简单起见,省略了一堆商标标志。所以假设 Java™、JDK™ 和 JRE™。
SO 似乎无法呈现嵌套列表。
只需去掉“1”。来自javac -version 和java -version 打印的版本,你很高兴。
【讨论】:
随着 Java 5 的发布,产品版本与开发人员版本不同,如 here 所述
版本号“1.5.0”和“5.0”都用于标识 Java 2 平台标准版的这个版本。版本“5.0”是产品版本,而“1.5.0”是开发者版本。数字“5.0”用于更好地反映J2SE的成熟度、稳定性、可扩展性和安全性的水平。
5.0 版用于此表中给出的平台和产品名称:
| Full Name | Abbreviation | |
|---|---|---|
| Platform name | Java™ 2 Platform Standard Edition 5.0 | J2SE™ 5.0 |
| Products delivered under the platform | J2SE™ Development Kit 5.0 | JDK™ 5.0 |
| J2SE™ Runtime Environment 5.0 | JRE 5.0 |
J2SE 还在某些仅对开发人员可见的地方或版本号由程序解析的地方保留版本号 1.5.0(或 1.5)。如前所述,1.5.0 指的是完全相同的平台和编号为 5.0 的产品。版本号 1.5.0 和 1.5 用于:
【讨论】:
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更新45,命名为java jre 6u45。
据我所知,他们更喜欢使用数字 6 而不是使用 1.6,以更好地反映成熟度、稳定性、可扩展性、安全性等水平
【讨论】: