@arnaudroger
https://arnaudroger.github.io/blog/
http://simpleflatmapper.org/
https://github.com/arnaudroger/NoopFactory
What do I know about java 9?
@arnaudroger https://arnaudroger.github.io/blog/
see Oracle Java SE Support Roadmap
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
* JEP : JDK Enhancement Proposal
@arnaudroger https://arnaudroger.github.io/blog/
Why? Why? Why?
What is all that module system about?
Why did it take more than 11 years to do?
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
It's mostly a jar
with a module-info.class
But no version information.
Only a module if on the module path.
module simpleflatmapper.converter { requires simpleflatmapper.util; exports org.simpleflatmapper.converter; uses org.simpleflatmapper.converter.ConverterFactoryProducer; }
@arnaudroger https://arnaudroger.github.io/blog/
recent change, was dissallowed before
--illegal-access=permit is the default
-> old code breaking encapsulation will work,
for now. but security is compromised...
run with --illegal-access=deny if you can.
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
The following are still accessible
sun.misc.{Signal,SignalHandler}
sun.misc.Unsafe
sun.reflect.Reflection::getCallerClass(int)
sun.reflect.ReflectionFactory.newConstructorForSerialization
Same applies to your dependency.
@arnaudroger https://arnaudroger.github.io/blog/
Is Java9 just about pain?
91 JEPs
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
more details https://www.sitepoint.com/deep-dive-into-java-9s-stack-walking-api/
@arnaudroger https://arnaudroger.github.io/blog/
Reachability fence
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/
ship what's ready at a specified date
Shenandoah, ultra-low pause time garbage collector
Graal, JIT compiler, potential C2 replacement
@arnaudroger https://arnaudroger.github.io/blog/
@arnaudroger https://arnaudroger.github.io/blog/