javaone update zur java plattform
DESCRIPTION
Vortrag von Wolfgang Weigend vor der Java Usergroup Berlin-Brandenburg am 20. November 2012.TRANSCRIPT
JavaOne Update zur Java Plattform
1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
zur Java Plattform
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
2 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
material, code, or functionality, 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.
Make the Future Java
� Platform Completeness
� Modernization and Innovation
� Developer Productivity
3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
� Open and Transparent Evolution
� Active Community Involvement
� Quality and Security
ServersServersServersServers DesktopDesktopDesktopDesktop EmbeddedEmbeddedEmbeddedEmbedded TVTVTVTV MobileMobileMobileMobile CardCardCardCard
BD-J
Die Java Plattform
4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Java Card
Java EE Java TV
BD-J
JavaFX MSA
Java Language
Java SE Java ME
Key APIs
Platform
Language
Java Platform
Wie sich die Java Plattform schrittweise verändert
• Java Community
• JDK 7 Review
• JDK 8 und darüber hinaus
5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• JDK 8 und darüber hinaus
• Entwicklungsumgebung
• JavaFX & OpenJFX
• Java ME
• Zusammenfassung
• Diskussion
• Veränderungen im JCP Prozess 2.9 Dokument mit Verschmelzung beider Executive Komitee Mitglieder zu einem einzigen
Executive Komitee
SE/EE
Executive
Committee
ME
Executive
Committee
JCP
Executive
Committee
25
Executive Member Merge Projekt JSR-355
7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Executive Committee (EC) Elections 2012
– New and re-elected merged EC Members
– Ratified Seats: Cinterion Wireless Modules GmbH, Credit Suisse, Fujitsu Limited, Hewlett-Packard
– Open Election Seats: CloudBees, London Java Community
– Newly elected EC Members take their seats on 13th of November 2012
• In the merged Executive Committee, Voting Members serve 2-year terms; by 2013, there will be 16 Ratified Seats and 8
Elected Seats, and the permanent seat held by Oracle America, Inc. 2-year terms are staggered so that 12 of the 24 seats are
normally up for ratification/election each year
• Change of Java Specification Participation Agreement (JSPA)
• Independent Implementations (Not derived from the RI)
• Licensing and Open Source
• Transparency Requirements
A major Revision of the Java Community Process: JSR-358
8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Transparency Requirements
• Compatibility Policy and TCKs
• The Role of Individual Members
• Patent Policy
• Intellectual Property Flow
• Refactoring and Cleanup
Zusammenarbeit mit der Community• OpenJDK Mitglieder: IBM, Apple, SAP, Azul Systems, Twitter
• OpenJDK Community Richtlinien verabschiedet
• JVM Language Summit (Jährlich)
− 30. Juli – 1. August 2012, Santa Clara Campus
9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• JUG Leaders Call alle zwei Wochen
• JUG Leader Summit im Januar (Jährlich)
• Über 250 JUG�s aus 50 Ländern am JDK 7 Launch beteiligt
• Community Keynote auf der JavaOne 2012
– 30. September – 4. Oktober 2012, San Francisco
Verwirklichte Pläne und neue Projekte
JDK 7
• Available for Windows, Linux, Solaris, embedded platforms
• Mac OS X seit JDK7u4
JVM Konvergenz
• Initial JRockit/HotSpot Konvergenz in JDK 7
• No more Perm-Gen
Open Source
• OpenJDK official Java SE 7 Reference Implementation
• OpenJDK project initiated for JDK 8
10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Java Flight Recorder
• Memory-Leak Server
• Early Access Releases JDK 8 Build b65
Ziele der JVM Verschmelzung (HotRockit)− Maximale Performance und Skalierbarkeit− Multi-Core und Parallelisierungs Optimierungen− Feingranulares Monitoring, Profiling und Management− Extrem effiziente Garbage Collection
JDK 7 Update ReleasesFehlerbereinigung
• Projekt entwickelt Updates für JDK 7
• Sponsor ist die Build Group
• Mailing Liste lautet jdk7u-dev− Technische Diskussion zum JDK 7 Updates Projekt
− Archive vorhanden
11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− Archive vorhanden
− Nachrichten an alle Teilnehmer verschicken: • [email protected]
− jdk7u-dev Subscription
• Java SE 7 Update Release verfügbar: JDK 7u9− Changesets und aktuelle Änderungen in Java SE 7u10
� 7u-dev accepting 7u12 fixes
− Projekt Feedback Forum für Java SE Snapshots
− Report a Bug, oder Request a Feature
Java SE 7 Verbreitung
150
200
250
Mil
lio
ns
Oracle JRE 7 Downloads
12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
0
50
100
150
7 7u1 7u2 7u3 7u4 7u5 7u6 7u7
Mil
lio
ns
Java 7 für Mac OS X und Linux/ARMEthernetEthernet
USBUSB
SD CardSD Card
RCA RCA General General
PowerPowerHDMIHDMIEthernet
USB
SD Card
RCA General
PowerHDMI
13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
AudioAudio RCA VideoRCA Video
General Purpose I/OGeneral Purpose I/OAudio RCA
Video
General Purpose I/O
Image source: Boston Ltd., UK
Platform Footprint
10MB-100MB
Java Embedded im EinsatzMEDIUM
SE-E
LARGESMALLSECURITY
14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
DeviceCPU/GPU/I-OARM 7 Cortex M ARM9/11 MIPS32/Intel Atom/ARM CortexA/PPC
50KB-1MB
1MB-10MBJava card
OJEC
SE-E
ME-E
Neue Embedded ReleasesJava ME Embedded 3.2Java ME Embedded 3.2
Runtime for small embedded devices: Microcontroller class platforms
Java Java Embedded Suite 7.0Embedded Suite 7.0
Pre-integrated full featured Java Embedded Platform
Embedded
Enterprise Data & Applications
DB3.1.1
15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
EDGE DEVICES GATEWAYS/CONCENTRATORS
Embedded
• Java SE Embedded 7
• Java DB−Unterstützung zur Speicherung strukturierter Daten mit SQL
Java Embedded Suite 7.0auf Basis Java Plattform
16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• GlassFish Version für die Embedded Suite−Vollständige Kompatibilität zur Java Servlet 3.0 Spezifikation
•Jersey Web Services Framework−Bereitstellung von Web Services, statischen- und dynamischen Web Content und Client-Zugriff über RESTful Web Services
JDK 7 Funktionsumfang
• Coin – Kleine Sprachverbesserungen (JSR-334)
• Dynamic Language Support (JSR-292)
• Concurrency und Collections Updates (JSR-166y)
• Netzwerk und File System (JSR-203)
17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Netzwerk und File System (JSR-203)
• Sicherheit
• Internationalisierung
• JVM Konvergenz
Languages Running on the JVM
GroovyJRuby
…
18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
…Scala
ClojureJavaScript
Java SE RoadmapJDK 9• Jigsaw
• Interoperability
• Optimizations
• Cloud
• Ease of Use
• JavaFX JSR
Major Serviceability improvements• Java Flight Recorder in JDK
• Native Memory Tracking
• Java Discovery Protocol
• App Store Packaging Tools
• Last Public Release of JDK 6
JDK 8• Lambda
• Complete JVM Convergence
• JavaScript Interoperability
• JavaFX 8
− Public UI Control API
− Java SE Embedded support
− Enhanced HTML5 support
19 Copyright © 2012, 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
2015
19
NetBeans IDE 7.3• Scene Builder 1.1 support
Scene Builder 1.1 • Linux support
NetBeans IDE 8• JDK 8 support
• Scene Builder 2.0 support
Scene Builder 2.0• JavaFX 8 support
• Enhanced Java IDE support
• Feedback der Community – Zwischen den neuen JDK-Versionen werden 2 Jahre Zeit benötigt• Release Datum September 2013• Funktionsumfang:
− Projekt Lambda (JSR-335)− JavaScript Interoperabilität
JDK 8 geplant für September 2013
20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− JavaScript Interoperabilität− Device-Unterstützung
• Weitere kleine Sprachverbesserungen
im Projekt Coin Teil 2
• Java SE 8 Early Access Releases
− JDK 8 Build b65
• M6 Feature Complete — All features have been implemented and integrated into the master forest, together with unit tests
− 101 Generalized Target-Type Inference
− 104 Annotations on Java Types
− 107 Bulk Data Operations for Collections
− 108 Collections Enhancements from Third-Party Libraries
− 109 Enhance Core Libraries with Lambda
JDK 8 – ZeitplanDetailplanung M6 bis Release-Freigabe
21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− 115 AEAD CipherSuites
− 118 Access to Parameter Names at Runtime
− 120 Repeating Annotations
− 123 Configurable Secure Random-Number Generation
− 126 Lambda Expressions and Virtual Extension Methods
− 135 Base64 Encoding and Decoding
− 150 JSR 310: Date and Time API
− 156 G1 GC: Reduce need for full GCs
− 160 Lambda-Form Representation for Method Handles
JDK 8
Innovation• Lambda JSR 335
• Language Interoperability
• Nashorn
Core Libraries
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
22 Copyright © 2012, 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 Ausdrücke JSR-335
•Functional Interfaces: “An interface with one method”
• Vorschlag zum Sprachumfang von Java SE 8
− 0.5.1 Early Draft Review 2 Specification vom 19. Juli 2012file:///C:/Java/jsr335-0.5.1/index.html
− Prototype Binaries verfügbar: http://jdk8.java.net/lambda/
23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− Prototype Binaries verfügbar: http://jdk8.java.net/lambda/
•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 werdenx -> !x.isEmpty()
Today we write:
Collections.sort(people, new Comparator<Person>() {
public int compare(Person x, Person y) {
return x.getLastName().compareTo(y.getLastName());
}
});
Lambda AusdrückeState of the Lambda 4th Edition
24 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
/* This is a very verbose way to write "sort people by last name"! */
With lambda expressions, we can make this expression more concise:
Collections.sort(people,
(Person x, Person y) -> x.getLastName().compareTo(y.getLastName()));
List<Student> students = new ArrayList<>(...);
...
double highestScore =
students.parallel()
.filter(s -> s.getGradYear() == 2011)
.map(s -> s.getScore())
.reduce(0.0, Integer::max);
Lambda Ausdrücke – ParallelisiertState of the Lambda Libraries Edition
25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− 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
Modularität • Projekt Jigsaw: komplette Plattform Modularisierung• Module system for Java applications and the Java platform
Interoperability• Multi-language JVM• Improved Java/Native integration
Cloud• Multi-tenancy support• Resource management
JDK 9 und die Vision darüber hinaus
26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Resource management
Ease of Use• Self-tuning JVM• Language enhancements
Advanced Optimizations• Unified type system• Data structure optimizations
Works Everywhere and with Everything
• Scale down to embedded, up to massive servers• Support for heterogenuous compute models
JDK 9 und darüber hinaus (2)• Jigsaw
• Reification
• Ease of use
• Optimizations
• Generic Lang Interoperability
• Penrose
• OpenJFX
27 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• OpenJFX
• Project Sumatra – Java for GPUs
• More and more Ports
• Multi-Tenancy
• Self Tuning JVM
• Improved Native Integration
• Resource Management
• Unified Type System
• Data Structure Optimizations
Modularisierung im JDKProjekt Jigsaw Java Module Systemmodule com.greetings @ 0.1 {
requires org.astro @ 1.2; class com.greetings.Hello;
}
package com.greetings; import org.astro.World; public class Hello {
public static void main(String[] args) {System.out.println("Hello, " + World.name() + "!");
28 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
System.out.println("Hello, " + World.name() + "!");}
}
module org.astro @ 1.2 { }
package org.astro; public class World {
private static native byte[] getName(); static {
System.loadLibrary("world"); } public static String name() {
return new String(getName()); }
}
OpenJDK Projekt “Penrose”Vereinte Modularisierung
•„Penrose“ soll OSGi mit Jigsaw vereinen
• Interoperabilität zwischen Projekt Jigsaw und
den OSGi Implementierungen
• Existierendes hohes Investment in OSGi Technologie
29 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Existierendes hohes Investment in OSGi Technologie
• Entwickler Beteiligung zur Statusbeobachtung und
Einflußnahme bei Zusammenarbeit der Module-Systeme
• Erstellung eines Prototypen zur Demonstration
der Module-System-Interoperabilität
• Technische Diskussion: [email protected]
NetBeans IDE 7.2.1 • Entwicklungswerkzeug für Desktop, mobile und Web Anwendungen
− Java EE 6, Java SE 6 (REST, CDI, JPA), Java SE 7, Swing, JavaFX� Java Editor support for Project Coin (Diamond Operator, Strings in switch, Multi-catch)
� Bulk Refactoring of projects and packages to Java SE 7
� JavaFX 2.0 Full edit/compile/debug cycle support
� Visual Debugging of JavaFX apps
� Native Integration mit FindBugs
− Java ME und Embedded
30 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− PHP, Ruby, Groovy, C / C++
− HTML5 Editing, JSON Formatter
− Debugger, Profiler, Refactoring
• Läuft auf MS Windows, Linux, Mac OS X und Solaris• NetBeans IDE ist open-source und frei verfügbar• Feature Liste & Builds
� netbeans.org/community/releases/roadmap.html
• NetBeans IDE 7.3 Beta 2 Release� http://netbeans.org/community/releases/73/� New and Noteworthy NB73
Projekt Easel - Advanced Tooling für HTML 5
• Provides the foundation for tooling support
• Consume Java EE based services with today’s popular JavaScript frameworks
• HTML5 Application Development
31 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• HTML5 Application Development− HTML5 Application project with JavaScript testing support
− JavaScript Editor significantly improved
− Page inspector and visual CSS style editor
− JavaScript Debugger
− Embedded Web Kit browser; deep integration with Chrome
• Eclipse Projekte mit Werkzeugen und Frameworks
• Ganzheitliche Unterstützung vom Software Development Lebenszyklus
− Modellierung
− Entwicklung
− Deployment Werkzeuge
− Reporting
Unterstützung für eclipse IDE
32 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− Reporting
− Daten Manipulation
− Testing und Profiling
• Primärer Fokus zur Entwicklung von Anwendungen
− Java EE, Web Services und Web Anwendungen
• Eclipse Unterstützung für andere Programmiersprachen
− C/C++, PHP, andere
� JavaFX als strategische UI für Rich-Client-Applikationen� Einheitliche Applikationsentwicklung für Java und Web-Lösungen
• Browser Plug-in, Web Start, Native Executables
• Hardware Accelerated Graphics (DirectX, OpenGL)
• JavaFX wird mit HTML-DOM ausgestattet − JavaFX mit WebView für HTML5 Features (Web Sockets, offline Browsing, lokale Datenbank)
− Leistungsfähige JavaScript Engine
− JavaFX als Applet eingebettet in einer Web-Seite lauffähig
JavaFX 2.x
33 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
� JavaFX 2.0 Plattform Sprachwechsel• Java als native Sprache - anstatt JavaFX Script
• JavaFX APIs in Java implementiert
• Vorteile bei Verwendung von Generics, Annotations und Multithreading für JavaFX
� JavaFX 2.2.3 verfügbar und mit NetBeans 7.2.1 unterstützt• Migrationspfad für Swing- und SWT-basierte Anwendungen
• JFXPanel Komponente ermöglicht das Einbinden von JavaFX Anwendungen in Swing
• Open Source mit OpenJFX und im JCP standardisiert
� JavaFX Scene Builder 1.1 Developer Preview
JavaFX Runtime Architektur
34 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
JavaFX Architektur Komponenten• Glass Windowing Toolkit: Provides native operating services, such as managing the
windows, timers, and surfaces
• Prism: Graphics pipeline that can run on hardware and software renderers
• UI Toolkit: Ties Prism and Glass together and makes them available to the JavaFX APIs
Scenegraph• Instead of remove/add:
− group.getChildren().remove(node);− group.getChildren().add(0, node);
• node.toFront()
JavaFX Scenegraph
35 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• node.toFront() • node.toBack()
Scenegraph−node.toFront() −node.toBack()
Class JFXPaneljava.lang.Object
java.awt.Componentjava.awt.Container
private static void initFX(JFXPanel fxPanel) {
// This method is invoked on JavaFX thread
Scene scene = createScene();
fxPanel.setScene(scene);
}
JavaFX mit JFXPanel Komponente in Swing Anwendungen einbinden
public class Test {
private static void initAndShowGUI() {
// This method is invoked on Swing thread
JFrame frame = new JFrame("FX");
final JFXPanel fxPanel = new JFXPanel();
36 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
javax.swing.JComponentjavafx.embed.swing.JFXPanel
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
initAndShowGUI();
}
});
}
}
frame.add(fxPanel);
frame.setVisible(true);
Platform.runLater(new Runnable() {
@Override
public void run() {
initFX(fxPanel);
}
});
}
JavaFX Update und Roadmap
Dez 2011 Jan 2012 Apr 2012 Aug 2012
Linux/ARM Dev Preview
OpenJFX Project created
Linux Developer Preview
JavaFX 2.1 fürMac OS X
JavaFX 2.2 fürLinux
Scene Builder 1.0
NetBeans 7.2 mit
2013 2014
JavaFX 8• Included in JDK 8
• Concurrent OS support: Windows, Mac OS, Linux, ARM
37 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Linux/ARM Dev Preview
Scene Builder Linux Developer Preview
NetBeans 7.2 mitJavaFX 2.1 undScene Builder Integration
NetBeans.next• Java SE 8 support• JavaFX 8 support• more
JavaFX via Open Source auf dem Weg ins JDK 8
Open Source
�OpenJFX Project under OpenJDK
�
�
Konvergenz
�Common license with Java SE (in place)
�
�
Standardisierung
�Oracle committed to JavaFX standardization
38 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
�First phase to focus on UI Controls
� �JavaFX to be included in Java SE by JDK 8
�JavaFX for Java SE Embedded (ARM)
� �JSR to be submitted through JCP
OpenJFX Project
• OpenJFX is the open source home of JavaFX development
• Goal of OpenJFX is to build the next-generation Java client toolkit
• Project OpenJFX intends to file a JSR in the Java SE 9 timeframe and be part of the JDK
• In 2011 the JavaFX toolkit was completely rewritten in Java and released by Oracle as JavaFX 2.0
39 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Oracle announced that it would donate the JavaFX toolkit to the open source community and by November 2011 the OpenJDK Community had agreed to take it on
• Project OpenJFX is currently focused on absorbing the existing code base from Oracle and building a functioning community around it
• Oracle's code will be donated in phases with the initial piece being the UI Controls classes
JavaFX Anwendungen� HealthConnect is a Belgian company with deep expertise in integration architectures, software development, eHealth integration and project management in the health sector. Based on the broad experience and expertise of its people, HealthConnect provides services to healthcare practitioners, healthcare institutions, mutual insurance organisations and governments. The health sector is our only focus and therefore our customer’s guarantee for added value. HealthConnect has been launched in 2010. After two year, it counts 35 employees (in Belgium and India)
� Deep Analytics of Big Data• Create highly advanced analysis fast and cost efficient• End-User Programming in Java, Scala and R• Access to thousands of analytical algorithms, methods and tools
41 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Access to thousands of analytical algorithms, methods and tools• Oracle Java Magazine: “Java Powers Analytical Breakthroughs at QuantCell Research”
• Java Analytical Models and Big Data: End User Programming in Spreadsheets. How to use JavaFX to build an end user environment supporting rich visualization and big data analytics
� Container Terminal Operations• General Cargo Terminal Operations• Intermodal Rail Operations• Shipping Line Operations• Yard Management
JavaFX Anwendung auf dem Raspberry Pi Computer
• Java SE Embedded auf dem Raspberry Pi Computer
− build 1.7.0_04-ea-b20, headless
• JavaFX für Embedded Devices
42 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
− JavaFX Developer Preview for ARM (JDK 7)
−JavaFX.profile.embedded@8-ea
• Java-Module der Java SE Embedded Runtime Environment Version (build 1.8.0-ea-b00, headless) mit einem Jigsaw-Prototypen für Raspberry Pi Computer erstellt
• Konferenzplaneranwendung j1_2012_scheduler
Java SE 8 Compact-Profile mit Speicherbedarf
43 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Java SE 8 Compact-Profile mit Packages
Compact1 Profil Compact2 Profil Compact3 Profil Vollständige JREjava.lang java.sql java.lang.management java.appletjava.io jvax.sql javax.management java.awtjava.nio javax.xml javax.naming java.beansjava.text org.w3c.dom java.sql.rowset javax.activityjava.math org.xml.sax javax.security.auth.kerberos javax.rmijava.net java.rmi org.ietf.jgss javax.rmi.CORBAjavax.net javax.rmi javax.script org.omgjava.util.logging javax.transaction javax.xml.crypto javax.accessibility
44 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
java.util.logging javax.transaction javax.xml.crypto javax.accessibilityjava.security java.util.prefs javax.imagio
javax.security.sasl javax.printjavax.security.acl javax.soundjavax.lang.instrument javax.swingjavax.annotation.processing javax.activationjavax.lang.model javax.jwsjavax.lang.model.element
javax.lang.model.type
javax.lang.model.util
javax.tools
javax.xml.bind
javax.xml.soap
javax.xml.ws
javax.annotation
Embedded Java Roadmap
Java Embedded Suite 7• SE Embedded 7• GlassFish for Embedded• Java DB
Java SE Embedded 8 • Complete JVM convergence• Additional compact profiles• JavaFX for Embedded
Java Embedded Suite 8• Additional enterprise middleware integrations
• Flight Recorder/Mission Control
Java Embedded Suite 7.1• Sync with latest JDK and
GlassFish• Optimizations and additional
platform support
Java Embedded 9• JDK9• Modularity based on
Jigsaw• Additional Embedded
device APIs• Ease of Development
NetBeans IDE 7.2• ME Embedded support
45 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
2015201520122012 20132013 20142014
• Java DB
Java ME Embedded 3.2• Microcontroller support• Device Access APIs
Java ME SDK 3.2• Embedded emulator• Eclipse integration
Java ME Embedded 3.3• Enhanced device access • Footprint optimization &
configuration tools• Improved developer
tooling & experience
Java ME Embedded 8• Java ME 8• Standardized Embedded API• New on-device debugging
architecture
NetBeans IDE 8• Java ME/SE 8 Embedded
support
NetBeans IDE 9• Java ME/SE 9
Embedded support• Jigsaw support
Java ME / Embedded
• Introduced Java Embedded Suite – middleware stack for embedded
• Introduced Java ME Embedded for Java on microcontrollers
• Java ME/SE alignment planned for ME/SE 8 in CY 2013
• Java ME 8 JSR submission being prepared in JCP
46 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Java ME 8 JSR submission being prepared in JCP
• Move towards single platform JSR
• Subset of Java SE, merge ME/SE tool and API ecosystem
• Generic small footprint platform for small embedded devices
• Enable Java in the Internet of Things
Zusammenfassung� Java SE 7
• Inkrementelle Änderungen
• Evolutionär, nicht revolutionär
• Solides Feature-Set für Entwicklungsarbeit
� Java SE 8
• Funktionale Programmierung: Lambda
� Java SE 9
47 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
� Java SE 9
• Modularisierung: Jigsaw
� Java ME
• Konvergenz mit Java SE
� Java EE 7
− Neue API’s
� Java als Plattform nutzt Innovationen im Ökosystem und paßt sich demÄnderungprozess der IT an
Vielen Dank für Ihre Aufmerksamkeit!
48 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.