On 16/05/2016 15:28, Uwe Schindler wrote:
:

This is not the only class that’s missing at runtime, there are more: I do not have the 
complete list, but our checks using the forbiddenapis Ant/Maven/Gradle plugin fails to 
load classes around JAXB/XML (javax.xml.bind.*, javax.jws.*) and CORBA (org.omg.CORBA.*), 
but also "javax.activation.ActivationDataFlavor". But there may be more 
packages missing.

jdk-9+118 is the first JDK 9 build to have the policy for root modules that is described in JEP 261. This has been changed in the Jigsaw EA builds some time and only merged into the main line for build 118. I hope to send mail to jdk9-dev shortly about this - we know it will be a surprise to some.

As to what is going on? The java.corba and the EE modules are no longer resolved by default when compiling code in the unnamed module or where the main class is loaded from class path. This means the types in these modules are not visible. Nothing has been removed and if you run with `-addmods java.se.ee` then each of the Java EE modules will be resolved as they were previously. We have updated text for JEP 261 that describes this in more detail, along with the rational. We will likely assess the impact of this change later in JDK 9 but for now, there is easy workaround for those that depend on these components being in the JDK.

-Alan

Reply via email to