SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
JDK 8 and JDK 8 Updates in
OpenJDK
1 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
OpenJDK
Wolfgang Weigend
Sen. Leitender Systemberater
Java Technologie und Architektur
The following is intended to outline our general product
direction. It is intended for information purposes only, and
may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality,
and should not be relied upon in making purchasing
2 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
and should not be relied upon in making purchasing
decisions.
The development, release, and timing of any features or
functionality described for Oracle’s products remains at
the sole discretion of Oracle.
OpenJDK in a Nutshell
“The place to collaborate on an open-source
implementation of the Java Platform, Standard
Edition, and related projects.”
3 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
Edition, and related projects.”
Groups and Projects
4 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
Group
Project
Groups
OpenJDK
Governing Board Porters
PowerPC/
AIX
5 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
OpenJDK
Members
Build
JDK9
Permanent Group
JDK8u
BSD Port
Mac OSX
Roles of OpenJDK Participation
• Participant
– Making minor contributions
• Contributor
– Signed agreement, making
Participant
6 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
– Signed agreement, making
non-trivial changes
• OpenJDK Member
– Senior role, may propose
new Groups, Projects and
Members
OpenJDK
Members
Contributor
Roles of Groups
• Group Member
– An elected OpenJDK
Contributor
• Group Lead
7 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Group Lead
– An OpenJDK Member
appointed by the GB
– Reports on group work
– Can sponsor projects
Group
Member
Group
Lead
Roles of OpenJDK Projects
• Author
– Can create code changes
• Committer
– Can check in code changes
Reviewer
8 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
– Can check in code changes
• Reviewer
– Can approve code changes
• Project Lead
Author
Committer Project Lead
Community Engagement
Non-complex bugs, review, test portingIntermediate
Advanced Solving non-trivial bugs
9 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
Fix build warnings, trivial bugs,
test and report regressions
Starter
• Messages per Month and the mailing lists
OpenJDK 8 - MarkMail search
10 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
JDK 8 Update Informations
• All information about JDK 8 Update Releases
http://openjdk.java.net/projects/jdk8u/
• Send bug reports - Report a Bug or Request a Feature
http://bugreport.java.com/bugreport/
• Track bug reports - Tracking Your Issues In The JDK Bug System
11 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Track bug reports - Tracking Your Issues In The JDK Bug System
https://robilad.livejournal.com/139637.html
• How to contribute and Submit a patch
http://openjdk.java.net/contribute/
• Nominating a Contributor or Author to be a Committer
http://openjdk.java.net/projects/#project-committer
JDK Enhancement Proposal’s (JEP’s)
• Regularly updated list of proposals
– Serve as the long-term roadmap for JDK release projects
– Roadmap extends for at least three years
• Uniform format and a central archive for enhancement proposals
– Interested parties can find, read, comment, and contribute
• Process is open to every OpenJDK Committer
12 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Process is open to every OpenJDK Committer
• Enhancement is a non-trivial change to the JDK code base
– Two or more weeks of engineering effort
– significant change to JDK or development processes and infrastructure
– High demand from developers or customers
• JDK Enhancement-Proposal & Roadmap Process
http://openjdk.java.net/jeps/1
Java SE 8 Reference Implementations
• Available at https://jdk8.java.net/java-se-8-ri/
• Based solely upon open source code from JDK 8 Project in OpenJDK
– RI binaries source code available under the GPLv2 in a single zip file (118 MB)
• Binaries provided
– Oracle Linux 6.1 x64 Java Development Kit (154 MB)
– Windows 7 i586 Java Development Kit (90.1 MB)
13 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
– Windows 7 i586 Java Development Kit (90.1 MB)
– Oracle Linux 6.1 i586 (for Compact Profiles) JRE, see JEP 161 Compact Profiles
• Binaries provided primarily for use by implementor’s of the Java SE 8 Platform Specification
• Recommended for reference purposes only
• Reference Implementations have been approved by the JCP
• They will receive no updates, not even for security issues
• RI Binaries under the GNU General Public License version 2
– and under the Oracle Binary Code License
JDK 8 Updates Project in OpenJDK
• Oracle JDK 8 Updates based on an OpenJDK Project
• Web Site: http://openjdk.java.net/projects/jdk8u
• Information on developers and development processes
• Q & A and status updates
14 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Q & A and status updates
• Sources: http://hg.openjdk.java.net/jdk8u/jdk8u
• Master forest: jdk8u/jdk8u
• Development forest: http://hg.openjdk.java.net/jdk8u/jdk8u-dev
• Mailing list: jdk8u-dev@openjdk.java.net
14
OpenJDK - 11105 Commits in 12 Months
15 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
Source: http://www.ohloh.net/p/openjdk/commits/summary
JDK 8
Innovation
• Lambda JSR 335
• Language Interoperability
• Nashorn
Core Libraries
• Parallel operations for core collections API‘s
Java for Everyone
• Profiles for constrained devices
• JSR 310 – Date & Time API‘s
• Non-Gregorian calendars
• Unicode 6.1
• ResourceBundle
• BCP47 locale matching
Client
• Deployment enhancements
• JavaFX 8
• Public UI Control API
• Java SE Embedded support
• Enhanced HTML5 support
• 3D shapes and attributes
16 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Parallel operations for core collections API‘s
• Improvements in functionality
• Improved type inference
General Goodness
• JVM enhancements
• No PermGen limitations
• Performance Improvements
• BCP47 locale matching
• Globalization & Accessibility
Tools
• Compiler control & logging
• JSR 308 – Annotations on Java Type
• Native app bundling
• App Store Bundling tools
• 3D shapes and attributes
• Printing
Security
• Limited doPriviledge
• NSA Suite B algorithm support
• SNI Server Side support
• DSA update to FIPS186-3
• AEAD JSSE CipherSuites
Lambda Expression JSR-335
• Functional Interfaces: “An interface with one method”
• Gehört zum Sprachumfang von Java SE 8
− Final Release Specification
file:///C:/Java/jsr335-final/index.html
− http://www.oracle.com/technetwork/java/javase/downloads/index.html
17 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
− http://www.oracle.com/technetwork/java/javase/downloads/index.html
• Lambda Expressions (closures)
/* (int x, int y) {return x+y; } */
• Parameter Liste → -> Operator → Expression od. Statements
(String x) -> {return !x.isEmpty();}
• Was hergeleitet werden kann, kann auch weggelassen werden
x -> !x.isEmpty()
Extension Methods
• Provide a mechanism to add new methods to existing interfaces
– Without breaking backwards compatibility
– Gives Java multiple inheritance of behaviour, as well as types
• but not state!
18 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
public interface Set<T> extends Collection<T> {
public int size();
... // The rest of the existing Set methods
public T reduce(Reducer<T> r)
default Collections.<T>setReducer;
}
List<Student> students = new ArrayList<>(...);
...
double highestScore =
students.parallelStream()
.filter(s -> s.getGradYear() == 2013)
.map(s -> s.getScore())
.reduce(0.0, Integer::max);
Lambda Expressions – Parallel
State of the Lambda Libraries Edition
19 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
.reduce(0.0, Integer::max);
− More readable
− Better abstraction
− No reliance on mutable state
− Runs in parallel
− Works on any data structure that knows how to subdivide itself
Concurrent Bulk Data Operations in Java collections API’s (JEP 107)
− filter/map/reduce
Java Mission Control 5.3
20 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Information gathering
− Instrumentation calls all over the JVM
− Application information via Java API
• Collected in Thread Local buffers
⇢ Global Buffers ⇢Disk
Java Flight Recorder – How is it built?
21 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
⇢ Global Buffers ⇢Disk
• Binary, proprietary file format
• Managed via JMX
• Java Flight Recorder
− Start from JMC 5.3 or CLI
• Activate Flight Recorder
− -XX: +UnlockCommercialFeatures
− -XX: +FlightRecorder
JavaFX via Open Source in JDK 8
Open Source
OpenJFX Project under
OpenJDK
Converged
Common license with
Java SE
Standardization
Oracle committed to
JavaFX standardization
22 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
OpenJDK
First phase to focus on
UI Controls
Java SE
JavaFX included in
Java SE with JDK 8
JavaFX for Java SE
Embedded (ARM)
JavaFX standardization
JSR to be submitted
through JCP
JavaFX goes Open Source
iOS- and Android-Implementations
• iOS- and Android-Implementions are Open Source
• Licensing with an own Application-Co-Bundle
23 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
Compact-Profiles
RI Binaries under the GNU General
Public License version 2 and
under the Oracle Binary Code License
• Compact Profile 1 (13.8 MB)
24 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Compact Profile 1 (13.8 MB)
• Compact Profile 2 (17.5 MB)
• Compact Profile 3 (19.5 MB)
Compact-Profiles and Packages
Compact1 Profil Compact2 Profil Compact3 Profil Vollständige JRE
java.lang java.sql java.lang.management java.applet
java.io jvax.sql javax.management java.awt
java.nio javax.xml javax.naming java.beans
java.text org.w3c.dom java.sql.rowset javax.activity
java.math org.xml.sax javax.security.auth.kerberos javax.rmi
java.net java.rmi org.ietf.jgss javax.rmi.CORBA
javax.net javax.rmi javax.script org.omg
25 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
javax.net javax.rmi javax.script org.omg
java.util javax.transaction javax.xml.crypto javax.accessibility
java.util.logging java.util.prefs javax.imagio
java.security javax.security.sasl javax.print
javax.crypto javax.security.acl javax.sound
javax.security javax.lang.instrument javax.swing
javax.annotation.processing javax.activation
javax.lang.model javax.jws
javax.lang.model.element
javax.lang.model.type
javax.lang.model.util
javax.tools
javax.xml.bind
javax.xml.soap
javax.xml.ws
javax.annotation
Compact-Profile – New Option for „javac“
• New “javac” option
‒ javac -target 8 -profile Profile
‒ The javac compiler will verify java code against APIs available in profile
‒ $ javac -profile compact1 Hello.java
• New “jar” option
26 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• New “jar” option
‒ jar -profile Profile
‒ Marks jar file with minimum required profile
‒ Main application jar file defines default minimum profile
• Runtime verification of profile
‒ jar files will be validated at startup to ensure minimum profile is running
• “java -version” will report active profile
Project Nashorn
• Lightweight, high-performance JavaScript engine
− Integrated into JRE
• ECMAScript 5.1 compliant JavaScript that runs on the JVM
− Accessible via javax.script API or jjs command line
27 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
• Replacement for Rhino
• Exploits JSR-292 via Dynalink
• Fully part of the OpenJDK
• Available on Java SE and Java ME
• Nashorn - Der Weg zur polyglotten VM
Project Nashorn Performance
‒Test app executes Esprima parser and tokenizer
bitbucket.org/ariya/nashorn-speedtest
‒Rhino gets the first chance, Nashorn follows right after, each engine gets 30 runs
In the beginning, Rhino’s first run is 2607 ms and slowly it speeds up and finally this parsing is completed in just 824 ms
‒Nashorn timings have a different characteristic
When it is cold, Nashorn initially takes 5328 ms to carry out the operation but it quickly picks up the pace and imediate,
it starts moving full steam ahead, reaching 208 ms per run
‒Nashorn compiles JavaScript code into Java bytecodes and run them on the JVM itself
28 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
‒Nashorn compiles JavaScript code into Java bytecodes and run them on the JVM itself
Nashorn is taking advantage of invokedynamic instruction to permit "efficient and flexible execution" in a dynamic
environment such as JavaScript
mytext
Java SE Roadmap
JDK 9
• Jigsaw
• Interoperability
• Optimizations
• Cloud
• Ease of Use
• JavaFX JSR
JDK 7u40/45/51/55
• Java Flight Recorder
in JDK
• Native Memory
Tracking
• Java Discovery
Protocol
• App Store Packaging
Tools
JDK 8 GA18th of March 2014
• Lambda
• Complete JVM Convergence
• JavaScript Interoperability
• JavaFX 8
− Public UI Control API
− Java SE Embedded support
− Enhanced HTML5 support
JDK 8.1 Q3 2014
• Deterministic G1
• JMC 6
• Improved JRE
installer
• Japp bundling
enhancements
JDK 7u21
• Java Client
Security
Enhancements
JDK
8.2
29 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
2013 2014
NetBeans IDE 9
• JDK 9 support
• Scene Builder 3.0 support
Scene Builder 3.0
• JavaFX 9 support
2016
• Scene Builder support
NetBeans IDE 7.3
• New hints and refactoring
• Scene Builder support
Tools
NetBeans IDE 8
• JDK 8 support
• Scene Builder 2.0 support
Scene Builder 2.0
• JavaFX 8 support
• Enhanced Java IDE support
Scene Builder 1.1
• Linux support
2015
JDK 8u20 - OpenJDK 8u20 Release
• General bug fixes to improve and enhance the OpenJDK 8u releases
• Schedules are subject to change
• Best efforts are made to keep this page updated with most recent information. Only
critical fixes will be considered for integration in the weeks leading up to the GA milestone
• The code freeze dates are usually one week before the milestone. Exact dates and a
30 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
8u-dev forests are opened January 2014
Feature Complete March 2014
Rampdown 1 April 2014
RampDown 2 June 2014
GA, Fork for the stabilization forests August 2014
• The code freeze dates are usually one week before the milestone. Exact dates and a
heads up will be sent to the mailing list when a milestone is approaching
Summary
• Java SE 8 with lots of new functionality
– Language
– Libraries
– JVM
31 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
– JVM
• Java evolves continuously
– jdk8.java.net
– www.jcp.org
– openjdk.java.net/jeps
Thanks!
Wolfgang.Weigend@oracle.com
Twitter: @wolflook
32 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.

Weitere ähnliche Inhalte

Was ist angesagt?

Adopt-a-JSR for JSON Processing 1.1, JSR 374
Adopt-a-JSR for JSON Processing 1.1, JSR 374Adopt-a-JSR for JSON Processing 1.1, JSR 374
Adopt-a-JSR for JSON Processing 1.1, JSR 374Heather VanCura
 
Mavenizing your Liferay project
Mavenizing your Liferay projectMavenizing your Liferay project
Mavenizing your Liferay projectmimacom
 
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na NuvemTecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na NuvemBruno Borges
 
Enterprise Java Web Application Frameworks Sample Stack Implementation
Enterprise Java Web Application Frameworks   Sample Stack ImplementationEnterprise Java Web Application Frameworks   Sample Stack Implementation
Enterprise Java Web Application Frameworks Sample Stack ImplementationMert Çalışkan
 
Java EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c DevelopersJava EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c DevelopersBruno Borges
 
Java 9 Modularity and Project Jigsaw
Java 9 Modularity and Project JigsawJava 9 Modularity and Project Jigsaw
Java 9 Modularity and Project JigsawComsysto Reply GmbH
 
Melhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na NuvemMelhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na NuvemBruno Borges
 
Migrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFXMigrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFXBruno Borges
 
“Full-stack developer: з чого розпочати кар’єру?”
 “Full-stack developer: з чого розпочати кар’єру?”  “Full-stack developer: з чого розпочати кар’єру?”
“Full-stack developer: з чого розпочати кар’єру?” GlobalLogic Ukraine
 
Modern web application development with java ee 7
Modern web application development with java ee 7Modern web application development with java ee 7
Modern web application development with java ee 7Shekhar Gulati
 
JavaOne 2014 BOF4241 What's Next for JSF?
JavaOne 2014 BOF4241 What's Next for JSF?JavaOne 2014 BOF4241 What's Next for JSF?
JavaOne 2014 BOF4241 What's Next for JSF?Edward Burns
 
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)Martin Toshev
 
Servlet 4.0 at GeekOut 2015
Servlet 4.0 at GeekOut 2015Servlet 4.0 at GeekOut 2015
Servlet 4.0 at GeekOut 2015Edward Burns
 
Java: Create The Future Keynote
Java: Create The Future KeynoteJava: Create The Future Keynote
Java: Create The Future KeynoteSimon Ritter
 
HTTP/2 comes to Java. What Servlet 4.0 means to you. DevNexus 2015
HTTP/2 comes to Java.  What Servlet 4.0 means to you. DevNexus 2015HTTP/2 comes to Java.  What Servlet 4.0 means to you. DevNexus 2015
HTTP/2 comes to Java. What Servlet 4.0 means to you. DevNexus 2015Edward Burns
 
GlassFish in Production Environments
GlassFish in Production EnvironmentsGlassFish in Production Environments
GlassFish in Production EnvironmentsBruno Borges
 
Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowDmitry Kornilov
 

Was ist angesagt? (20)

Adopt-a-JSR for JSON Processing 1.1, JSR 374
Adopt-a-JSR for JSON Processing 1.1, JSR 374Adopt-a-JSR for JSON Processing 1.1, JSR 374
Adopt-a-JSR for JSON Processing 1.1, JSR 374
 
Mavenizing your Liferay project
Mavenizing your Liferay projectMavenizing your Liferay project
Mavenizing your Liferay project
 
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na NuvemTecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
 
Enterprise Java Web Application Frameworks Sample Stack Implementation
Enterprise Java Web Application Frameworks   Sample Stack ImplementationEnterprise Java Web Application Frameworks   Sample Stack Implementation
Enterprise Java Web Application Frameworks Sample Stack Implementation
 
Java EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c DevelopersJava EE 7 for WebLogic 12c Developers
Java EE 7 for WebLogic 12c Developers
 
Java 9 Modularity and Project Jigsaw
Java 9 Modularity and Project JigsawJava 9 Modularity and Project Jigsaw
Java 9 Modularity and Project Jigsaw
 
Melhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na NuvemMelhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na Nuvem
 
JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...
JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...
JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...
 
Java modules
Java modulesJava modules
Java modules
 
Migrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFXMigrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFX
 
“Full-stack developer: з чого розпочати кар’єру?”
 “Full-stack developer: з чого розпочати кар’єру?”  “Full-stack developer: з чого розпочати кар’єру?”
“Full-stack developer: з чого розпочати кар’єру?”
 
Modern web application development with java ee 7
Modern web application development with java ee 7Modern web application development with java ee 7
Modern web application development with java ee 7
 
JavaOne 2014 BOF4241 What's Next for JSF?
JavaOne 2014 BOF4241 What's Next for JSF?JavaOne 2014 BOF4241 What's Next for JSF?
JavaOne 2014 BOF4241 What's Next for JSF?
 
Java modules using project jigsaw@jdk 9
Java modules using project jigsaw@jdk 9Java modules using project jigsaw@jdk 9
Java modules using project jigsaw@jdk 9
 
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
 
Servlet 4.0 at GeekOut 2015
Servlet 4.0 at GeekOut 2015Servlet 4.0 at GeekOut 2015
Servlet 4.0 at GeekOut 2015
 
Java: Create The Future Keynote
Java: Create The Future KeynoteJava: Create The Future Keynote
Java: Create The Future Keynote
 
HTTP/2 comes to Java. What Servlet 4.0 means to you. DevNexus 2015
HTTP/2 comes to Java.  What Servlet 4.0 means to you. DevNexus 2015HTTP/2 comes to Java.  What Servlet 4.0 means to you. DevNexus 2015
HTTP/2 comes to Java. What Servlet 4.0 means to you. DevNexus 2015
 
GlassFish in Production Environments
GlassFish in Production EnvironmentsGlassFish in Production Environments
GlassFish in Production Environments
 
Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and Tomorrow
 

Ähnlich wie JDK 8 and JDK 8 Updates in OpenJDK

Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cDeveloping Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cBruno Borges
 
JavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth SlidesJavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth SlidesEdward Burns
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"GlobalLogic Ukraine
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Curity
 
JVMs in Containers - Best Practices
JVMs in Containers - Best PracticesJVMs in Containers - Best Practices
JVMs in Containers - Best PracticesDavid Delabassee
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsDavid Delabassee
 
WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014Joelith
 
Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQLTed Wennmark
 
Java Community and Overview Track - March 2016
Java Community and Overview Track - March 2016Java Community and Overview Track - March 2016
Java Community and Overview Track - March 2016Yolande Poirier
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011Arun Gupta
 
Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Wolfgang Weigend
 
Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019Shaun Smith
 
What's New and Noteworthy on Oracle CAF 12.1.3
What's New and Noteworthy on Oracle CAF 12.1.3What's New and Noteworthy on Oracle CAF 12.1.3
What's New and Noteworthy on Oracle CAF 12.1.3Bruno Borges
 

Ähnlich wie JDK 8 and JDK 8 Updates in OpenJDK (20)

Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cDeveloping Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
 
JDK 10 Java Module System
JDK 10 Java Module SystemJDK 10 Java Module System
JDK 10 Java Module System
 
Javantura v6 - JDK 11 & JDK 12 - Dalibor Topic
Javantura v6 - JDK 11 & JDK 12 - Dalibor TopicJavantura v6 - JDK 11 & JDK 12 - Dalibor Topic
Javantura v6 - JDK 11 & JDK 12 - Dalibor Topic
 
JavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth SlidesJavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth Slides
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
 
Java 101
Java 101Java 101
Java 101
 
JDK versions and OpenJDK
JDK versions and OpenJDKJDK versions and OpenJDK
JDK versions and OpenJDK
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1
 
Java SE Subscription Workshop
Java SE Subscription WorkshopJava SE Subscription Workshop
Java SE Subscription Workshop
 
JVMs in Containers - Best Practices
JVMs in Containers - Best PracticesJVMs in Containers - Best Practices
JVMs in Containers - Best Practices
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and Triumphs
 
WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014
 
Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQL
 
Java Community and Overview Track - March 2016
Java Community and Overview Track - March 2016Java Community and Overview Track - March 2016
Java Community and Overview Track - March 2016
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
 
Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1
 
JVMs in Containers
JVMs in ContainersJVMs in Containers
JVMs in Containers
 
Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019Serverless Java: JJUG CCC 2019
Serverless Java: JJUG CCC 2019
 
What's New and Noteworthy on Oracle CAF 12.1.3
What's New and Noteworthy on Oracle CAF 12.1.3What's New and Noteworthy on Oracle CAF 12.1.3
What's New and Noteworthy on Oracle CAF 12.1.3
 
Java Cloud and Container Ready
Java Cloud and Container ReadyJava Cloud and Container Ready
Java Cloud and Container Ready
 

Mehr von Wolfgang Weigend

It's a jdk jungle out there - JDK 11 and OpenJDK 11
It's a jdk jungle out there - JDK 11 and OpenJDK 11It's a jdk jungle out there - JDK 11 and OpenJDK 11
It's a jdk jungle out there - JDK 11 and OpenJDK 11Wolfgang Weigend
 
The JDK 8 end of public updates and the Java SE subscription
The JDK 8 end of public updates and the Java SE subscription The JDK 8 end of public updates and the Java SE subscription
The JDK 8 end of public updates and the Java SE subscription Wolfgang Weigend
 
Microservices and Container
Microservices and ContainerMicroservices and Container
Microservices and ContainerWolfgang Weigend
 
JDK 9 Java Platform Module System
JDK 9 Java Platform Module SystemJDK 9 Java Platform Module System
JDK 9 Java Platform Module SystemWolfgang Weigend
 
fn project serverless computing
fn project serverless computingfn project serverless computing
fn project serverless computingWolfgang Weigend
 
Java Flight Recorder Javamagazin May 2017
Java Flight Recorder Javamagazin May 2017Java Flight Recorder Javamagazin May 2017
Java Flight Recorder Javamagazin May 2017Wolfgang Weigend
 
Javamagazin 1.2016 jdk9_ea_b83_jigsaw
Javamagazin 1.2016 jdk9_ea_b83_jigsawJavamagazin 1.2016 jdk9_ea_b83_jigsaw
Javamagazin 1.2016 jdk9_ea_b83_jigsawWolfgang Weigend
 
Das 1×1 des java supports wie die wartung älterer jdk-versionen weitergeht
Das 1×1 des java supports wie die wartung älterer jdk-versionen weitergehtDas 1×1 des java supports wie die wartung älterer jdk-versionen weitergeht
Das 1×1 des java supports wie die wartung älterer jdk-versionen weitergehtWolfgang Weigend
 
Automated testing of JavaFX GUI components
Automated testing of JavaFX GUI componentsAutomated testing of JavaFX GUI components
Automated testing of JavaFX GUI componentsWolfgang Weigend
 
Java mission control and java flight recorder
Java mission control and java flight recorderJava mission control and java flight recorder
Java mission control and java flight recorderWolfgang Weigend
 
Automated testing of JavaFX UI components
Automated testing of JavaFX UI componentsAutomated testing of JavaFX UI components
Automated testing of JavaFX UI componentsWolfgang Weigend
 
Java magazin9 2012_wls 12c_das_dutzend_ist_voll
Java magazin9 2012_wls 12c_das_dutzend_ist_vollJava magazin9 2012_wls 12c_das_dutzend_ist_voll
Java magazin9 2012_wls 12c_das_dutzend_ist_vollWolfgang Weigend
 
Jm 10.13 weigend_lagergren_nashorn
Jm 10.13 weigend_lagergren_nashornJm 10.13 weigend_lagergren_nashorn
Jm 10.13 weigend_lagergren_nashornWolfgang Weigend
 
Article - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der EntwicklerArticle - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der EntwicklerWolfgang Weigend
 

Mehr von Wolfgang Weigend (15)

It's a jdk jungle out there - JDK 11 and OpenJDK 11
It's a jdk jungle out there - JDK 11 and OpenJDK 11It's a jdk jungle out there - JDK 11 and OpenJDK 11
It's a jdk jungle out there - JDK 11 and OpenJDK 11
 
The JDK 8 end of public updates and the Java SE subscription
The JDK 8 end of public updates and the Java SE subscription The JDK 8 end of public updates and the Java SE subscription
The JDK 8 end of public updates and the Java SE subscription
 
Microservices and Container
Microservices and ContainerMicroservices and Container
Microservices and Container
 
JDK 9 Java Platform Module System
JDK 9 Java Platform Module SystemJDK 9 Java Platform Module System
JDK 9 Java Platform Module System
 
fn project serverless computing
fn project serverless computingfn project serverless computing
fn project serverless computing
 
Java Flight Recorder Javamagazin May 2017
Java Flight Recorder Javamagazin May 2017Java Flight Recorder Javamagazin May 2017
Java Flight Recorder Javamagazin May 2017
 
Javamagazin 1.2016 jdk9_ea_b83_jigsaw
Javamagazin 1.2016 jdk9_ea_b83_jigsawJavamagazin 1.2016 jdk9_ea_b83_jigsaw
Javamagazin 1.2016 jdk9_ea_b83_jigsaw
 
Das 1×1 des java supports wie die wartung älterer jdk-versionen weitergeht
Das 1×1 des java supports wie die wartung älterer jdk-versionen weitergehtDas 1×1 des java supports wie die wartung älterer jdk-versionen weitergeht
Das 1×1 des java supports wie die wartung älterer jdk-versionen weitergeht
 
Automated testing of JavaFX GUI components
Automated testing of JavaFX GUI componentsAutomated testing of JavaFX GUI components
Automated testing of JavaFX GUI components
 
Java mission control and java flight recorder
Java mission control and java flight recorderJava mission control and java flight recorder
Java mission control and java flight recorder
 
Automated testing of JavaFX UI components
Automated testing of JavaFX UI componentsAutomated testing of JavaFX UI components
Automated testing of JavaFX UI components
 
Java magazin9 2012_wls 12c_das_dutzend_ist_voll
Java magazin9 2012_wls 12c_das_dutzend_ist_vollJava magazin9 2012_wls 12c_das_dutzend_ist_voll
Java magazin9 2012_wls 12c_das_dutzend_ist_voll
 
JavaFX goes open source
JavaFX goes open sourceJavaFX goes open source
JavaFX goes open source
 
Jm 10.13 weigend_lagergren_nashorn
Jm 10.13 weigend_lagergren_nashornJm 10.13 weigend_lagergren_nashorn
Jm 10.13 weigend_lagergren_nashorn
 
Article - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der EntwicklerArticle - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der Entwickler
 

Kürzlich hochgeladen

MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 

Kürzlich hochgeladen (20)

MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 

JDK 8 and JDK 8 Updates in OpenJDK

  • 1. JDK 8 and JDK 8 Updates in OpenJDK 1 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. OpenJDK Wolfgang Weigend Sen. Leitender Systemberater Java Technologie und Architektur
  • 2. The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing 2 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  • 3. OpenJDK in a Nutshell “The place to collaborate on an open-source implementation of the Java Platform, Standard Edition, and related projects.” 3 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Edition, and related projects.”
  • 4. Groups and Projects 4 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Group Project
  • 5. Groups OpenJDK Governing Board Porters PowerPC/ AIX 5 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. OpenJDK Members Build JDK9 Permanent Group JDK8u BSD Port Mac OSX
  • 6. Roles of OpenJDK Participation • Participant – Making minor contributions • Contributor – Signed agreement, making Participant 6 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. – Signed agreement, making non-trivial changes • OpenJDK Member – Senior role, may propose new Groups, Projects and Members OpenJDK Members Contributor
  • 7. Roles of Groups • Group Member – An elected OpenJDK Contributor • Group Lead 7 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Group Lead – An OpenJDK Member appointed by the GB – Reports on group work – Can sponsor projects Group Member Group Lead
  • 8. Roles of OpenJDK Projects • Author – Can create code changes • Committer – Can check in code changes Reviewer 8 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. – Can check in code changes • Reviewer – Can approve code changes • Project Lead Author Committer Project Lead
  • 9. Community Engagement Non-complex bugs, review, test portingIntermediate Advanced Solving non-trivial bugs 9 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Fix build warnings, trivial bugs, test and report regressions Starter
  • 10. • Messages per Month and the mailing lists OpenJDK 8 - MarkMail search 10 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
  • 11. JDK 8 Update Informations • All information about JDK 8 Update Releases http://openjdk.java.net/projects/jdk8u/ • Send bug reports - Report a Bug or Request a Feature http://bugreport.java.com/bugreport/ • Track bug reports - Tracking Your Issues In The JDK Bug System 11 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Track bug reports - Tracking Your Issues In The JDK Bug System https://robilad.livejournal.com/139637.html • How to contribute and Submit a patch http://openjdk.java.net/contribute/ • Nominating a Contributor or Author to be a Committer http://openjdk.java.net/projects/#project-committer
  • 12. JDK Enhancement Proposal’s (JEP’s) • Regularly updated list of proposals – Serve as the long-term roadmap for JDK release projects – Roadmap extends for at least three years • Uniform format and a central archive for enhancement proposals – Interested parties can find, read, comment, and contribute • Process is open to every OpenJDK Committer 12 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Process is open to every OpenJDK Committer • Enhancement is a non-trivial change to the JDK code base – Two or more weeks of engineering effort – significant change to JDK or development processes and infrastructure – High demand from developers or customers • JDK Enhancement-Proposal & Roadmap Process http://openjdk.java.net/jeps/1
  • 13. Java SE 8 Reference Implementations • Available at https://jdk8.java.net/java-se-8-ri/ • Based solely upon open source code from JDK 8 Project in OpenJDK – RI binaries source code available under the GPLv2 in a single zip file (118 MB) • Binaries provided – Oracle Linux 6.1 x64 Java Development Kit (154 MB) – Windows 7 i586 Java Development Kit (90.1 MB) 13 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. – Windows 7 i586 Java Development Kit (90.1 MB) – Oracle Linux 6.1 i586 (for Compact Profiles) JRE, see JEP 161 Compact Profiles • Binaries provided primarily for use by implementor’s of the Java SE 8 Platform Specification • Recommended for reference purposes only • Reference Implementations have been approved by the JCP • They will receive no updates, not even for security issues • RI Binaries under the GNU General Public License version 2 – and under the Oracle Binary Code License
  • 14. JDK 8 Updates Project in OpenJDK • Oracle JDK 8 Updates based on an OpenJDK Project • Web Site: http://openjdk.java.net/projects/jdk8u • Information on developers and development processes • Q & A and status updates 14 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Q & A and status updates • Sources: http://hg.openjdk.java.net/jdk8u/jdk8u • Master forest: jdk8u/jdk8u • Development forest: http://hg.openjdk.java.net/jdk8u/jdk8u-dev • Mailing list: jdk8u-dev@openjdk.java.net 14
  • 15. OpenJDK - 11105 Commits in 12 Months 15 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Source: http://www.ohloh.net/p/openjdk/commits/summary
  • 16. JDK 8 Innovation • Lambda JSR 335 • Language Interoperability • Nashorn Core Libraries • Parallel operations for core collections API‘s Java for Everyone • Profiles for constrained devices • JSR 310 – Date & Time API‘s • Non-Gregorian calendars • Unicode 6.1 • ResourceBundle • BCP47 locale matching Client • Deployment enhancements • JavaFX 8 • Public UI Control API • Java SE Embedded support • Enhanced HTML5 support • 3D shapes and attributes 16 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Parallel operations for core collections API‘s • Improvements in functionality • Improved type inference General Goodness • JVM enhancements • No PermGen limitations • Performance Improvements • BCP47 locale matching • Globalization & Accessibility Tools • Compiler control & logging • JSR 308 – Annotations on Java Type • Native app bundling • App Store Bundling tools • 3D shapes and attributes • Printing Security • Limited doPriviledge • NSA Suite B algorithm support • SNI Server Side support • DSA update to FIPS186-3 • AEAD JSSE CipherSuites
  • 17. Lambda Expression JSR-335 • Functional Interfaces: “An interface with one method” • Gehört zum Sprachumfang von Java SE 8 − Final Release Specification file:///C:/Java/jsr335-final/index.html − http://www.oracle.com/technetwork/java/javase/downloads/index.html 17 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. − http://www.oracle.com/technetwork/java/javase/downloads/index.html • Lambda Expressions (closures) /* (int x, int y) {return x+y; } */ • Parameter Liste → -> Operator → Expression od. Statements (String x) -> {return !x.isEmpty();} • Was hergeleitet werden kann, kann auch weggelassen werden x -> !x.isEmpty()
  • 18. Extension Methods • Provide a mechanism to add new methods to existing interfaces – Without breaking backwards compatibility – Gives Java multiple inheritance of behaviour, as well as types • but not state! 18 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. public interface Set<T> extends Collection<T> { public int size(); ... // The rest of the existing Set methods public T reduce(Reducer<T> r) default Collections.<T>setReducer; }
  • 19. List<Student> students = new ArrayList<>(...); ... double highestScore = students.parallelStream() .filter(s -> s.getGradYear() == 2013) .map(s -> s.getScore()) .reduce(0.0, Integer::max); Lambda Expressions – Parallel State of the Lambda Libraries Edition 19 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. .reduce(0.0, Integer::max); − More readable − Better abstraction − No reliance on mutable state − Runs in parallel − Works on any data structure that knows how to subdivide itself Concurrent Bulk Data Operations in Java collections API’s (JEP 107) − filter/map/reduce
  • 20. Java Mission Control 5.3 20 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
  • 21. • Information gathering − Instrumentation calls all over the JVM − Application information via Java API • Collected in Thread Local buffers ⇢ Global Buffers ⇢Disk Java Flight Recorder – How is it built? 21 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. ⇢ Global Buffers ⇢Disk • Binary, proprietary file format • Managed via JMX • Java Flight Recorder − Start from JMC 5.3 or CLI • Activate Flight Recorder − -XX: +UnlockCommercialFeatures − -XX: +FlightRecorder
  • 22. JavaFX via Open Source in JDK 8 Open Source OpenJFX Project under OpenJDK Converged Common license with Java SE Standardization Oracle committed to JavaFX standardization 22 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. OpenJDK First phase to focus on UI Controls Java SE JavaFX included in Java SE with JDK 8 JavaFX for Java SE Embedded (ARM) JavaFX standardization JSR to be submitted through JCP
  • 23. JavaFX goes Open Source iOS- and Android-Implementations • iOS- and Android-Implementions are Open Source • Licensing with an own Application-Co-Bundle 23 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.
  • 24. Compact-Profiles RI Binaries under the GNU General Public License version 2 and under the Oracle Binary Code License • Compact Profile 1 (13.8 MB) 24 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Compact Profile 1 (13.8 MB) • Compact Profile 2 (17.5 MB) • Compact Profile 3 (19.5 MB)
  • 25. Compact-Profiles and Packages Compact1 Profil Compact2 Profil Compact3 Profil Vollständige JRE java.lang java.sql java.lang.management java.applet java.io jvax.sql javax.management java.awt java.nio javax.xml javax.naming java.beans java.text org.w3c.dom java.sql.rowset javax.activity java.math org.xml.sax javax.security.auth.kerberos javax.rmi java.net java.rmi org.ietf.jgss javax.rmi.CORBA javax.net javax.rmi javax.script org.omg 25 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. javax.net javax.rmi javax.script org.omg java.util javax.transaction javax.xml.crypto javax.accessibility java.util.logging java.util.prefs javax.imagio java.security javax.security.sasl javax.print javax.crypto javax.security.acl javax.sound javax.security javax.lang.instrument javax.swing javax.annotation.processing javax.activation javax.lang.model javax.jws javax.lang.model.element javax.lang.model.type javax.lang.model.util javax.tools javax.xml.bind javax.xml.soap javax.xml.ws javax.annotation
  • 26. Compact-Profile – New Option for „javac“ • New “javac” option ‒ javac -target 8 -profile Profile ‒ The javac compiler will verify java code against APIs available in profile ‒ $ javac -profile compact1 Hello.java • New “jar” option 26 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • New “jar” option ‒ jar -profile Profile ‒ Marks jar file with minimum required profile ‒ Main application jar file defines default minimum profile • Runtime verification of profile ‒ jar files will be validated at startup to ensure minimum profile is running • “java -version” will report active profile
  • 27. Project Nashorn • Lightweight, high-performance JavaScript engine − Integrated into JRE • ECMAScript 5.1 compliant JavaScript that runs on the JVM − Accessible via javax.script API or jjs command line 27 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. • Replacement for Rhino • Exploits JSR-292 via Dynalink • Fully part of the OpenJDK • Available on Java SE and Java ME • Nashorn - Der Weg zur polyglotten VM
  • 28. Project Nashorn Performance ‒Test app executes Esprima parser and tokenizer bitbucket.org/ariya/nashorn-speedtest ‒Rhino gets the first chance, Nashorn follows right after, each engine gets 30 runs In the beginning, Rhino’s first run is 2607 ms and slowly it speeds up and finally this parsing is completed in just 824 ms ‒Nashorn timings have a different characteristic When it is cold, Nashorn initially takes 5328 ms to carry out the operation but it quickly picks up the pace and imediate, it starts moving full steam ahead, reaching 208 ms per run ‒Nashorn compiles JavaScript code into Java bytecodes and run them on the JVM itself 28 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. ‒Nashorn compiles JavaScript code into Java bytecodes and run them on the JVM itself Nashorn is taking advantage of invokedynamic instruction to permit "efficient and flexible execution" in a dynamic environment such as JavaScript mytext
  • 29. Java SE Roadmap JDK 9 • Jigsaw • Interoperability • Optimizations • Cloud • Ease of Use • JavaFX JSR JDK 7u40/45/51/55 • Java Flight Recorder in JDK • Native Memory Tracking • Java Discovery Protocol • App Store Packaging Tools JDK 8 GA18th of March 2014 • Lambda • Complete JVM Convergence • JavaScript Interoperability • JavaFX 8 − Public UI Control API − Java SE Embedded support − Enhanced HTML5 support JDK 8.1 Q3 2014 • Deterministic G1 • JMC 6 • Improved JRE installer • Japp bundling enhancements JDK 7u21 • Java Client Security Enhancements JDK 8.2 29 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. 2013 2014 NetBeans IDE 9 • JDK 9 support • Scene Builder 3.0 support Scene Builder 3.0 • JavaFX 9 support 2016 • Scene Builder support NetBeans IDE 7.3 • New hints and refactoring • Scene Builder support Tools NetBeans IDE 8 • JDK 8 support • Scene Builder 2.0 support Scene Builder 2.0 • JavaFX 8 support • Enhanced Java IDE support Scene Builder 1.1 • Linux support 2015
  • 30. JDK 8u20 - OpenJDK 8u20 Release • General bug fixes to improve and enhance the OpenJDK 8u releases • Schedules are subject to change • Best efforts are made to keep this page updated with most recent information. Only critical fixes will be considered for integration in the weeks leading up to the GA milestone • The code freeze dates are usually one week before the milestone. Exact dates and a 30 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. 8u-dev forests are opened January 2014 Feature Complete March 2014 Rampdown 1 April 2014 RampDown 2 June 2014 GA, Fork for the stabilization forests August 2014 • The code freeze dates are usually one week before the milestone. Exact dates and a heads up will be sent to the mailing list when a milestone is approaching
  • 31. Summary • Java SE 8 with lots of new functionality – Language – Libraries – JVM 31 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. – JVM • Java evolves continuously – jdk8.java.net – www.jcp.org – openjdk.java.net/jeps
  • 32. Thanks! Wolfgang.Weigend@oracle.com Twitter: @wolflook 32 Copyright © 2014, Oracle and/or its affiliates. All rights reserved.