JavaOne sessions I attended Wednesday

On Monday and Tuesday I felt like I had overloaded my schedule with too many sessions, so on Wednesday I only attended the following sessions:

I did not attend the following sessions, that had been originally on my schedule. But please note that I included links to the slide decks, if available:

Project Jigsaw notes and links

Goals
– Help fix problems with the classpath
– Allow modularization of JDK/JRE
– Enable using JSE subsets
– Improve performance (startup time, download time, etc.)

OSGi was considered too complex and not well-suited for JDK modularization
But: Project Penrose tries to make sure that OSGi can be implemented on top of Jigsaw.

Project is in Phase 1 (exploration, prototyping)
Phase 2 (reference implementation) in very early stages

Project website
Big picture of the Design

A lot of work to do
Was recently deferred from Java 8 to Java 9

Challenges:
– Dynamic modularization
– JEE containers
– Needs a reflective API
– Fundamental changes, require a lot of QA (testing, etc.)

But Java 8 might already introduce a simplified way of using JSE subset:
“JSE Profiles”

Module descriptor: module-info.java
http://openjdk.java.net/projects/jigsaw/doc/lang-vm.html#jigsaw-1.1

Modules are versioned
Only one version of a module can exist

Repositories: HTTP server or local files

Packager to generate deb, rpm packages etc. from Java modules
translate the module metadata to package metadata

JDK modularization
http://openjdk.java.net/projects/jigsaw/doc/jdk-modularization.html

Backwards compat:
Classpath-mode (legacy), Module mode

But: No more dependecies on internal classes (e.g. sun.misc.*) will be possible
No more rt.jar, tools.jar

JavaOne sessions I attended Tuesday

Of the more than 150 sessions on Tuesday I managed to attend these ones: