Java版本和术语,1.6 vs 6.0 OpenJDK vs Sun.
我在理解Java版本时遇到了问题。 我看到很多版本,如1.4.2,1.5和1.6,但我也偶然发现5.0和6.0。 我不明白这个版本或进展。
我是Java的新手,我已经阅读了一些关于OpenJDK vs Sun的内容,我想我理解它。 这些版本是OpenJDK和Sun之间的区别吗? 例如,OpenJDK的最新版本是1.6而Sun的版本是6.0?
所有这些版本对于刚接触Java的人来说都非常混乱。
版本控制简直就是一团糟:
- Java 1.0和1.1是正常的
- 然后是Java 1.2,但你应该称之为“Java 2,JDK 1.2”
- 这一直持续到1.4(还有像1.4.2这样的小版本)
- 然后下一个版本被称为“Java 5.0”,但文件名和URL中仍然存在“1.5”。
- 从Java 6开始,他们已经删除了次要版本,并且大多数(但不是完全看到
java -version
输出)消除了旧版本控制方案的痕迹,但是人们已经习惯了它并继续通俗地使用它。
这在Java SE命名和版本中解释(咳嗽):
当前版本是Java Platform,Standard Edition 6(Java SE 6)。 之前的版本是Java 2 Platform,Standard Edition 5.0(J2SE 5.0)。
Sun Microsystems在2006年简化了平台名称,以更好地反映Java平台内置的成熟度,稳定性,可伸缩性和安全性。 Sun从名称中删除了“2”并删除了“点号”(该时段后面的数字)。 对Java平台的任何更新都将被简单地记录为更新,而不是在平台名称的末尾添加“点号”。
由于Java开发人员社区中非常流行,开发工具包已从“Java 2 SDK”(或“J2SDK”)恢复为名称“JDK”。 运行时环境已从“J2RE”恢复为“JRE”。 (请注意,“JDK”代表5.0版中的“J2SE Development Kit”。)
有关平台名称和版本号的更多信息,请参阅以下页面:
- Java SE 6平台名称和版本号
- J2SE 1.5.0或5.0版?
- J2SE SDK / JRE版本字符串命名约定
并引用Java SE 6平台名称和版本号 :
在此版本中,平台名称已从J2SE TM更改为Java TM SE。 官方名称是Java TM Platform,Standard Edition 6。
两个版本号(1.6.0和6)都用于标识此Java版本的发行版。 版本6是产品版本 ,而1.6.0是开发人员版本 。 数字6用于反映Java SE的成熟度,稳定性,可伸缩性和安全性的发展水平。
和J2SE版本1.5.0或5.0? :
版本号“1.5.0”和“5.0”用于标识此Java 2平台标准版的发行版。 版本“5.0”是产品版本 ,而“1.5.0”是开发人员版本 。 数字“5.0”用于更好地反映J2SE的成熟度,稳定性,可伸缩性和安全性。
数字“5.0”是通过删除前导“1”得出的。 从“1.5.0”。 您可能期望看到1.5.0,它现在是5.0(而它是1.5,现在是5)。
总而言之,整个命名是一团糟,但最终结束了 ,目前的平台名称是Java TM Platform,Standard Edition 6(缩写为Java TM SE 6)。 该平台提供两种产品 :JDK TM 6和JRE TM 6。
OpenJDK 6是Java SE 6平台的开源实现,它与Sun的JDK不同。
- Java 1.5.x与Java 5.x相同
- Java 1.6.x与Java 6.x相同
基本上扔掉版本号的1.部分。
1.6和6都用于表示相同的版本(类似于1.5和5)。
唯一的区别是单个数字通常与Java SE 5和Java EE 6一起使用。
1.5和1.6版本是Java编译器使用java -version
所说的版本,有时“ 次要版本 ”用作版本字符串,例如SunOS 5.8称为Solaris 8作为产品名称。
- 加载XSLT文件时解析相对路径
- SpringXD和Spring Integration:每隔X分钟从kafka主题中读取一遍,然后发送到另一个主题
- 在eclipse中使用Gwt 2.7
- AutoCloseable的close方法抛出exception是否有意义? 应如何处理?
- 如何使用spring 3.2新的mvc测试登录用户
- 什么是最高效的基于Java的流式XSLT处理器?
- 修复:“找不到映射”尝试使用Spring-MVC设置RESTfull接口
- 如何使用spring-social-security SocialAuthenticationFilter指定OAuth2范围?
- Mockito:如何在不模拟所有参数的情况下轻松存根方法