Java 9 Questions

Kevin Rushforth kevin.rushforth at oracle.com
Thu Nov 19 20:47:58 UTC 2015


Answers inline

> - There is a separate download for Java 9 + Jigsaw, but it has a much earlier build number (b86).  Is Jigsaw not included with the  of the latest (b92) download?
>   

Jigsaw builds are built from a separate sandbox forest:

JDK:  http://hg.openjdk.java.net/jigsaw/jake
JavaFX:  http://hg.openjdk.java.net/openjfx/sandbox-9-jake/rt

Changesets are periodically synced from jdk9-dev to jigsaw/jake (and 
from openjfx 9-dev to openjfx/sandbox-9-jake). From the tags you can see 
that it has now been synced up with b92 (this happened earlier this 
week), so you should expect that to be reflected in the next EA build of 
Jigsaw.

> - When looking at the Java 9 JEPs I see several that are UI related:
>   - JEP 251: Multi-resolution Images
>   - JEP 258: HarfBuzz Font-Layout Engine
>   - JEP 265: Marlin Graphics Renderer
>
> All of these refer to Java2D or AWT.   How is JavaFX affected?  Is there no common ground for things like multi-resolution images and font layout for example?  
>   

JavaFX is not affected directly, although we will look at pulling the 
improvements for Marlin into JavaFX if there is enough of a win. We 
currently don't have multi-resolution image support (but will look at 
this after we do the Hi-DPI improvements for FX). Harfbuzz is not 
relevant for FX.

> It is already cumbersome to deal with things like ImageIO because it depends on Java2d images and conversion is required to use JavaFX images.  How does Jigsaw help with this?  I hope I don’t have to pull in AWT/Swing just to load an image with ImageIO so that I can show it in my JavaFX application. (Too bad images or some base image class could not be made neutral to the UI toolkit being used.)
> I think there must be at least three different image loading mechanisms in the JDK now.  Are there plans to consolidate this?
>   

Sadly, the implementation of ImageIO is very Java2D-centric so without a 
fair bit of refactoring, there isn't a good waay to share the underlying 
code. As you know we don't yet have image writers or pluggable image 
loaders in JavaFX. As for whether jigsaw will help, not really, since 
all of AWT/Swing/Java2D is in the java.desktop module.

> Just curious where things are heading.
>   

We will be looking to plug the remaining gaps that currently require 
some applications to need to convert to/from BufferedImage and use 
Java2D. Probably in a 9 update release.

-- Kevin


Scott Palmer wrote:
> I was just looking at the Java 9 EA pages and have a few questions (mostly JavaFX related).
>
> - There is a separate download for Java 9 + Jigsaw, but it has a much earlier build number (b86).  Is Jigsaw not included with the  of the latest (b92) download?
>
> - When looking at the Java 9 JEPs I see several that are UI related:
>   - JEP 251: Multi-resolution Images
>   - JEP 258: HarfBuzz Font-Layout Engine
>   - JEP 265: Marlin Graphics Renderer
>
> All of these refer to Java2D or AWT.   How is JavaFX affected?  Is there no common ground for things like multi-resolution images and font layout for example?  
>
> It is already cumbersome to deal with things like ImageIO because it depends on Java2d images and conversion is required to use JavaFX images.  How does Jigsaw help with this?  I hope I don’t have to pull in AWT/Swing just to load an image with ImageIO so that I can show it in my JavaFX application. (Too bad images or some base image class could not be made neutral to the UI toolkit being used.)
> I think there must be at least three different image loading mechanisms in the JDK now.  Are there plans to consolidate this?
>
> Just curious where things are heading.
>
> Thanks,
>
> Scott


More information about the openjfx-dev mailing list