Java Version History
Java Version History
The Java language has undergone several changes since JDK 1.0 as well as numerous
additions of classes and packages to the standard library. Since J2SE 1.4, the evolution of the
Java language has been governed by the Java Community Process (JCP), which uses Java
Specification Requests (JSRs) to propose and specify additions and changes to the Java
platform. The language is specified by the Java Language Specification (JLS); changes to the
JLS are managed under JSR 901.
In addition to the language changes, much more dramatic changes have been made to the Java
Class Library over the years, which has grown from a few hundred classes in JDK 1.0 to over
three thousand in J2SE 5. Entire new APIs, such as Swing and Java2D, have been introduced,
and many of the original JDK 1.0 classes and methods have beendeprecated. Some programs
allow conversion of Java programs from one version of the Java platform to an older one (for
example Java 5.0 backported to 1.4) (see Java backporting tools).
After the Java 7 release, Oracle promised to go back to a 2-year release cycle.[1] However, in
2013, Oracle announced that they would delay Java 8 by one year, in order to fix bugs related to
Java security.[2]
Java 8 is the only publicly supported version, while after public support periods of older versions
has ended, non-public updates have been issued for Java 7 and earlier.
Contents
[hide]
8.1Java 6 updates
7.1Java 5 updates
9.1Java 7 updates
10.1Java 8 updates
11Java SE 9
12Java SE 10
13Implementations
14References
15External links
JavaBeans
JDBC
RMI
strictfp keyword
the Swing graphical API was integrated into the core classes
Sun's JVM was equipped with a JIT compiler for the first time
Java plug-in
Collections framework
JavaSound
Language changes
Library improvements
Java Web Start included (Java Web Start was first released
in March 2001 for J2SE 1.3) (specified in JSR 56)
Public support and security updates for Java 1.4 ended in October 2008. Paid security updates
for Oracle customers ended in February 2013.[11]
Static imports
Scanner class for parsing data from various input streams and
buffers.
Java 5 is the last release of Java to officially support the Microsoft Windows 9x line (Windows 95,
Windows 98, Windows ME),[18] while Windows Vista is the newest version of Windows that J2SE
5 was supported on prior to Java 5 going end of life in October 2009. [11]
Java 5 Update 5 (1.5.0_05) is the last release of Java to work without any problems on Windows
NT 4.0.[19]
Java 5 is the default version of Java installed on Apple Mac OS X 10.5 (Leopard). Java 6 can be
installed and set as the default to be used on 64-bit (Core 2 Duo and higher) processor
machines.[20] Java 6 is also supported by 32-bit machines running Mac OS X 10.6 (Snow
Leopard).
Java 5 updates[edit]
Release
Release date
Highlights
Java SE 5
2004-10-4
Java SE 5 Update 1
2004-12-25
Java SE 5 Update 2
2005-03-16
2005-05-03
Java SE 5 Update 4
2005-07-04
Java SE 5 Update 5
2005-09-18
Java SE 5 Update 6
2005-12-07
Java SE 5 Update 7
2006-05-29
Java SE 5 Update 8
2006-08-13
Java SE 5 Update 9
2006-11-12
Java SE 5 Update 10
2006-12-22
Java SE 5 Update 11
2007-03-08
Java SE 5 Update 12
2007-06-11
Java SE 5 Update 13
2007-10-05
Java SE 5 Update 3
Java SE 5 Update 14
2008-03-06
2008-07-23
2008-12-03
Java SE 5 Update 18
2009-03-25
Java SE 5 Update 19
2009-05-29
Java SE 5 Update 20
2009-08-06
Java SE 5 Update 21
2009-09-09
Java SE 5 Update 22
2009-11-04
Java SE 5 Update 15
Java SE 5 Update 16
Java SE 5 Update 17
JVM improvements
include: synchronization and compiler performance
optimizations, new algorithms and upgrades to existing garbage
collection algorithms, and application start-up performance.
Java 6 reached the end of its supported life in February 2013, at which time all public updates,
including security updates, were scheduled to be stopped. [28][29] Oracle released two more update
to Java 6 in March and April 2013, which patched some security vulnerabilities. [30][31]
Java 6 updates[edit]
After Java 6 release, Sun, and later Oracle, released several updates which, while not changing
any public API, enhanced end-user usability or fixed bugs.[32]
Release
Release date
Highlights
Java SE 6
2006-12-23
Java SE 6 Update 1
2007-05-07
Java SE 6 Update 2
2007-07-03
Java SE 6 Update 3
2007-10-03
Java SE 6 Update 4
2008-01-14
HotSpot VM 10
Java SE 6 Update 5
2008-03-05
2008-04-16
Java SE 6 Update 6
2008-10-15
[41]
Enhanced updater.
Enhanced versioning and pack200 support: serverside support is no longer required.[36]
2008-12-03
13 security fixes[40]
2008-12-12
2009-03-24
2009-05-28
Java SE 6 Update 15
2009-08-04
Java SE 6 Update 16
2009-08-11
2009-11-04
Java SE 6 Update 18
2010-01-13
[52]
2010-03-30
2010-04-15
2 security fixes
2010-07-07
2010-10-12
2010-12-08
2011-02-15
Java SE 6 Update 25
2011-03-21
2011-06-07
2011-08-16
2011-10-18
2011-12-12
2012-02-14
2012-04-26
Java SE 6 Update 33
[68]
2012-06-12
2012-08-14
Java SE 6 Update 35
[70]
2012-08-30
2012-10-16
30 security fixes
2012-12-11
2013-02-01
50 security fixes
2013-02-19
5 security fixes
Java SE 6 Update 43
[77]
2013-03-04
2 security fixes
2013-04-16
2013-06-18
2013-10-15
2014-01-14
2014-04-15
2014-07-15
2014-10-16
2015-01-21
Java SE 6 Update 95
2015-04-14
2015-07-15
2015-10-20
Strings in switch[108]
New file I/O library (defined by JSR 203) adding support for
multiple file systems, file metadata and symbolic links. The
new packages are java.nio.file, java.nio.file.attribute and
java.nio.file.spi[116][117]
Java 7 updates[edit]
Oracle issued public updates to the Java 7 family on a quarterly
basis[123] until April 2015 when the product reached the end of its
support lifecycle.[124][125]
Release
Release date
Highlights
Java SE 7[126]
2011-07-28
2011-10-18
2011-12-12
2012-02-14
14 security fixes[130]
2012-04-26
2012-06-12
14 security fixes[133]
2012-08-14
2012-08-30
4 security fixes[71]
2012-10-16
2012-12-11
2013-01-13
2013-02-01
50 security fixes
2013-02-19
5 security fixes
2013-03-04
2 security fixes
2013-04-16
2013-06-18
2013-09-10
2013-10-15
2014-01-14
2014-04-15
37 security fixes[156]
2014-05-28
2014-07-15
18 bug fixes[160]
2014-08-04
1 bug fix[162]
2014-10-14
16 bug fixes[164]
[165]
2014-10-14
2015-01-20
2015-01-20
Java SE 7 Update 45
Java SE 7 Update 72
[150]
2015-04-14
21 security fixes
2015-04-14
Java SE 7 Update 85
2015-07-15
Java SE 7 Update 91
2015-10-20
Java 8 updates[edit]
Release
Release date
Highlights
Java SE 8
2014-03-18
Initial release
2014-04-15
[195]
Java SE 8 Update 11
2014-07-15
2014-08-19
2014-10-14
2015-01-19
2015-03-03
low memory).
2015-04-14
2015-07-14
2015-08-18
2015-10-20
3 bug fixes
2015-11-16
15 bug fixes
Java SE 9[edit]
At JavaOne 2011, Oracle discussed features they hope to have
in the initial release of Java 9 scheduled for September 22,
2016,[206] including better support for multi-gigabyte heaps, better
native code integration, and a self-tuning JVM.[207]
Java SE 10[edit]
There is speculation of introducing objects without identity (value
types),[216][217] as well as moving towards 64-bit addressable
arrays to support large data sets somewhere around 2018. [1]
Implementations[edit]
OpenJDK is a free and open source implementation of the Java
Platform, Standard Edition (Java SE).
Before OpenJDK, several Free Java implementations were
made by companies and groups such as Apache
Harmony. IBM also provides Java implementations,
References[edit]
1.
2.
3.
4.
5.
6.
7.
8.
9.
62. Jump up^ "Java SE 6 Update 27". Oracle Corporation. 201108-16. Retrieved 2011-08-16.
63. Jump up^ "Java SE 6 Update 29". Oracle Corporation. 201110-18. Retrieved 2011-10-18.
64. Jump up^ Oracle Java SE Critical Patch Update Advisory
October 2011
65. Jump up^ "Java SE 6 Update 30". Oracle Corporation.
Retrieved 2011-12-13.
66. Jump up^ "Java SE 6 Update 31". Oracle Corporation.
Retrieved 2012-02-17.
67. Jump up^ "Java SE 6 Update 32". Oracle Corporation.
Retrieved 2012-05-03.
68. Jump up^ "Java SE 6 Update 33". Oracle Corporation.
Retrieved 2012-06-13.
69. Jump up^ "Java SE 6 Update 34". Oracle Corporation.
Retrieved 2012-08-15.
70. Jump up^ "Java SE 6 Update 35". Oracle Corporation.
Retrieved 2012-08-31.
71. ^ Jump up to:a b "Oracle Security Alert for CVE-20124681". Oracle Corporation.
72. Jump up^ "Java SE 6 Update 37". Oracle Corporation.
Retrieved 2012-10-23.
73. Jump up^ "Java SE 6 Update 38". Oracle Corporation.
Retrieved 2012-12-24.
74. Jump up^ Java SE Development Kit 6 Update 38 Bug Fixes,
Oracle.com
75. Jump up^ "Java SE 6 Update 39". Oracle Corporation.
Retrieved 2013-02-01.
76. Jump up^ "Java SE 6 Update 41". Oracle Corporation.
Retrieved 2013-02-19.
77. Jump up^ "Java SE 6 Update 43". Oracle Corporation.
Retrieved 2013-03-04.
78. ^ Jump up to:a b "Java SE 6 Update 45". Oracle Corporation.
Retrieved 2013-04-16.
79. Jump up^ Oracle Java SE Critical Patch Update Advisory
April 2013
80. Jump up^ http://java.com/en/download/faq/why_upgrade.xml
81. Jump up^ "Java SE Development Kit 7, Update 25 (JDK
7u25)". Oracle Corporation. Retrieved2013-06-19. The
101.
102.
Jump up^ "JDK 7 Milestones". OpenJDK. Oracle
Corporation. Retrieved May 30, 2012.
103.
104.
Jump up^ "JSR 292: Supporting Dynamically Typed
Languages on the JavaTM Platform". Retrieved 25
August 2013.
105.
Jump up^ "Compressed oops in the Hotspot JVM".
OpenJDK. Retrieved 2012-08-01.
106.
Jump up^ "Java HotSpot VM Options". Oracle.
Retrieved 2013-04-11.
107.
Jump up^ "Java Programming Language
Enhancements". Download.oracle.com. Retrieved2013-01-15.
108.
Jump up^ "Strings in switch Statements".
Download.oracle.com. Retrieved 2013-01-15.
109.
Jump up^ "The try-with-resources Statement".
Download.oracle.com. Retrieved 2013-01-15.
110.Jump up^ "Type Inference for Generic Instance Creation".
Download.oracle.com. Retrieved2013-01-15.
111. Jump up^ "Improved Compiler Warnings When Using NonReifiable Formal Parameters with Varargs Methods".
Download.oracle.com. Retrieved 2013-01-15.
112.Jump up^ "Binary Literals". Download.oracle.com.
Retrieved 2013-01-15.
113.Jump up^ "Underscores in Numeric Literals".
Download.oracle.com. Retrieved 2013-01-15.
114.Jump up^ "Catching Multiple Exception Types and
Rethrowing Exceptions with Improved Type Checking".
Download.oracle.com. Retrieved 2013-01-15.
115.Jump up^ "Concurrency JSR-166". Retrieved 2010-04-16.
116.Jump up^ "File I/O (Featuring NIO.2)". Java.sun.com. 200803-14. Retrieved 2013-01-15.
117.Jump up^ "Legacy File I/O Code". Java.sun.com. 2012-0228. Retrieved 2013-01-15.
121.
122.
123.
Jump up^ Critical Patch Update table shows four dates
per year
124.
Jump up^ "Oracle Java SE Support Roadmap". Oracle
Corporation. 2014-12-19. Retrieved2015-01-07.
125.
126.
127.
128.
129.
130.
Jump up^ Oracle Java SE Critical Patch Update
Advisory February 2012
131.
132.
133.
Jump up^ Oracle Java SE Critical Patch Update
Advisory June 2012
134.
135.
136.
137.
138.
139.
10
140.
11
141.
Jump up^ "Oracle Security Alert for CVE-20130422". Oracle Corporation.
142.
Jump up^ Oracle Java SE Critical Patch Update
Advisory February 2013
143.
144.
145.
146.
147.
148.
149.
Jump up^ Oracle JDK 7u40 released security
features, hardfloat ARM, Java Mission Control and more
150.
Jump up^ Java SE Development Kit 7, Update 45
Update Release Notes
151.
152.
Jump up^ Java SE Development Kit 7 Update 51
Release Notes
153.
Jump up^ Oracle to patch Java, other products
Tuesday, ZDNet,
154.
Jump up^ Oracle Critical Patch Update Advisory
January 2014
155.
Jump up^ Java SE Development Kit 7 Update 55
Release Notes
156.
Jump up^ Oracle Critical Patch Update Advisory April
2014
157.
Jump up^ Java SE Development Kit 7 Update 60
Release Notes
158.
Jump up^ Java SE Development Kit 7 Update 60
Bug Fixes
159.
Jump up^ Java SE Development Kit 7 Update 65
Release Notes
160.
Jump up^ Java SE Development Kit 7 Update 65
Bug Fixes
161.
Jump up^ Java SE Development Kit 7 Update 67
Release Notes
162.
Jump up^ Java SE Development Kit 7 Update 67
Bug Fixes
163.
Jump up^ Java SE Development Kit 7 Update 71
Release Notes
164.
Jump up^ Java SE Development Kit 7 Update 71
Bug Fixes
165.
Jump up^ Java SE Development Kit 7 Update 72
Release Notes
166.
^ Jump up to:a b Java CPU and PSU Releases
Explained
167.
Jump up^ Java SE Development Kit 7 Update 72
Bug Fixes
168.
Jump up^ Java SE Development Kit 7 Update 75
Release Notes
169.
Jump up^ Java SE Development Kit 7 Update 75
Bug Fixes
170.
Jump up^ Java SE Development Kit 7 Update 76
Release Notes
171.
Jump up^ Java SE Development Kit 7 Update 76
Bug Fixes
172.
173.
Jump up^ "Proposed new schedule for Java 8". 201304-18. Retrieved 2013-04-19.
174.
Jump up^ "JDK 8". OpenJDK. 2013-04-18.
Retrieved 2014-01-28.
175.
Jump up^ "JDK 8 features". OpenJDK. 2014-01-28.
Retrieved 2014-01-28.
176.
177.
Jump up^ "Java 7 Features". Sun Microsystems.
2010-02-09. Retrieved 2010-04-16.
178.
^ Jump up to:a b "Interface evolution via virtual extension
methods" (PDF). Brian Goetz. 2011-07-20. Retrieved 2014-0327.
179.
Jump up^ "Lambda Expressions for the JavaTM
Programming Language". Brian Goetz. 2012-10-23.
Retrieved 2014-03-27.
180.
Jump up^ "The Java Tutorials: Default Methods".
Oracle. Retrieved 2014-03-27.
181.
Jump up^ Gafter, Neal (2006-08-18). "Closures for
Java". Retrieved 2008-03-09.
182.
Jump up^ Gosling, James (2008-01-31). "Closures".
Retrieved 2008-03-09.
183.
Jump up^ Reinhold, Mark (2009-11-28). "Closures for
Java". Retrieved 2009-11-24.
184.
185.
Jump
up^ https://blogs.oracle.com/darcy/entry/unsigned_api
186.
187.
188.
189.
190.
191.
Jump up^ "Oracle JDK 8 and JRE 8 Certified System
Configurations". Oracle Corporation. Retrieved 2014-04-15.
192.
Jump up^ Stahl, Henrik (2014-07-11). "Updated: The
future of Java on Windows XP". Oracle Corporation.
Retrieved 2014-11-11. JDK 8 is not supported on Windows
XP. Early versions of JDK 8 had known issues with the
installer on Windows XP that prevented it from installing
without manual intervention. This was resolved in JDK 8
Update 25. The important point here is that we can no longer
provide complete guarantees for Java on Windows XP, since
the OS is no longer being updated by Microsoft. We strongly
recommend that users upgrade to a newer version of
Windows that is still supported by Microsoft in order to
maintain a stable and secure environment.
193.
Jump up^ Blog By Tori Wieldt-Oracle on Oct 27,
2014https://blogs.oracle.com/java/entry/java_se_8_on_java
194.
Jump up^ "Java SE Development Kit 8, Update 5
(JDK 8u5)". oracle.com. Retrieved2014-04-28.
195.
Jump up^ "Java SE Development Kit 8, Update 11
(JDK 8u11)". oracle.com. Retrieved2014-07-16.
196.
Jump up^ "18 security bug fixes". oracle.com.
Retrieved 2014-07-16.
197.
Jump up^ "Java SE Development Kit 8, Update 20
(JDK 8u20)". oracle.com. Retrieved2014-08-27.
198.
Jump up^ "Java SE Development Kit 8, Update 25
(JDK 8u25)". oracle.com. Retrieved2014-10-14.
199.
Jump up^ "Java SE Development Kit 8, Update 31
(JDK 8u31)". oracle.com. Retrieved2015-01-21.
200.
Jump up^ "Java SE Development Kit 8, Update 40
(JDK 8u40)". oracle.com. Retrieved2015-03-04.
201.
Jump up^ "Java SE Development Kit 8, Update 45
(JDK 8u45)". oracle.com. Retrieved2015-04-15.
202.
Jump up^ "Java SE Development Kit 8, Update 51
(JDK 8u51)". oracle.com. Retrieved2015-07-14.
203.
Jump up^ "Java SE Development Kit 8, Update 60
(JDK 8u60)". oracle.com. Retrieved2015-08-18.
204.
Jump up^ "Java SE Development Kit 8, Update 65
(JDK 8u65)". oracle.com. Retrieved2015-10-20.
205.
Jump up^ "Java SE Development Kit 8, Update 66
Release Notes". oracle.com. Retrieved22 October 2015.
206.
Jump up^ "Mark your calendar: Java 9 finally has a
release date".
207.
208.
Jump up^ "Java Module-System Requirements
DRAFT 12". Oracle.
209.
Jump up^ "Project Jigsaw delayed until Java 9".
JavaWorld.
210.
213.
214.
Jump up^ Humble, Charles (Sep 18, 2013). "HSA
Foundation Targeting Heterogeneous GPU-CPU Execution
for Java Virtual Machines by 2015". InfoQ.
215.
Jump up^ "Azul Launches Early Access of Zulu on
Java 9 -- ADTmag". adtmag.com. Retrieved2015-12-15.
216.
Jump up^ Rose, John; Goetz, Brian; Steele,
Guy. "Value Types for Java".
217.
Jump up^ Rose, John. "JEP 169 Value Types for
Java".
218.
Jump
up^ https://www.ibm.com/developerworks/java/jdk/
External links[edit]
Java
Java language
JVM
Micro Edition
Java platforms
Standard Edition
Enterprise Edition
Java Card
Android SDK
Squawk
Java Development Kit
Oracle technologies
OpenJDK
Java virtual machine
JavaFX
Maxine VM
Platform technologies
Applets
Servlets
MIDlets
JSP
IcedTea
Jazelle
Spring
Struts
TopLink
WildFly
Java version history
History
JRuby
Jython
Processing
Rhino
Scala
more
Java conferences
Categories:
History of software
Java platform
Navigation menu
Not logged in
Talk
JavaOne
Contributions
Create account
Log in
Article
Talk
Read
Edit
View history
Go
Main page
Contents
Featured content
Current events
Random article
Donate to Wikipedia
Wikipedia store
Interaction
Help
About Wikipedia
Community portal
Recent changes
Contact page
Tools
What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Wikidata item
Cite this page
Print/export
Create a book
Download as PDF
Printable version
Languages
()
Deutsch
Magyar
Edit links