<story><title>The road to Java 9: Modular Java finally gets OK&apos;d</title><url>http://www.infoworld.com/article/3203931/java/the-road-to-java-9-modular-java-finally-gets-okd.html</url></story><parent_chain></parent_chain><comment><author>karianna</author><text>Hi all,&lt;p&gt;Martijn Verburg here - London Java Community (LJC) representative on the Java Community Process (JCP) Executive Committee (EC) (dear Cthulu, the acronyms) otherwise known as the Java standards body.&lt;p&gt;Here&amp;#x27;s our reasoning for voting &amp;quot;Yes&amp;quot; the 2nd time around:&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;londonjavacommunity.wordpress.com&amp;#x2F;2017&amp;#x2F;06&amp;#x2F;28&amp;#x2F;our-yes-vote-on-the-2nd-go-around-for-jsr-376-java-platform-module-system&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;londonjavacommunity.wordpress.com&amp;#x2F;2017&amp;#x2F;06&amp;#x2F;28&amp;#x2F;our-yes...&lt;/a&gt;&lt;p&gt;This is a great step forwards for Java &lt;i&gt;as a platform&lt;/i&gt; as it lays the foundation for a smaller, more secure and lightweight footprint.  There is still more to tackle on the modularity story (expect to see further updates in Java 9.1 and beyond).&lt;p&gt;It&amp;#x27;s very important to note that you can still run your normal Java classpath based application with Java 9.  The Classpath and Classloader mechanism is still there, although you&amp;#x27;ll see a few more warnings pop up if your application or its dependencies are relying on a deprecated API or dangerous internal lib.&lt;p&gt;&lt;i&gt;If&lt;/i&gt; you choose to port an existing project to the new module system and module path way of loading then you can gain some of the benefits but of course there will be a learning curve and I&amp;#x27;d argue that unless you&amp;#x27;re really needing that modular help then wait for Java 9.1 or even 10 until some of the edges have been ironed out.&lt;p&gt;Any other Q&amp;#x27;s throw my way!</text></comment>
<story><title>The road to Java 9: Modular Java finally gets OK&apos;d</title><url>http://www.infoworld.com/article/3203931/java/the-road-to-java-9-modular-java-finally-gets-okd.html</url></story><parent_chain></parent_chain><comment><author>le-mark</author><text>Lots of noise here about what it actually consists of. This blog post is a good overview[1]&lt;p&gt;&amp;gt; Creating a module is relatively simple however. A module is typically just a jar file that has a module-info.class file at the root - known as a modular jar file. And that file is created from a module-info.java file in your sourcebase (see below for more details).&lt;p&gt;&amp;gt; Using a modular jar file involves adding the jar file to the modulepath instead of the classpath. If a modular jar file is on the classpath, it will not act as a module at all, and the module-info.class will be ignored. As such, while a modular jar file on the modulepath will have hidden packages enforced by the JVM, a modular jar file on the classpath will not have hidden packages at all.&lt;p&gt;[1] &lt;a href=&quot;http:&amp;#x2F;&amp;#x2F;blog.joda.org&amp;#x2F;2017&amp;#x2F;04&amp;#x2F;java-9-modules-jpms-basics.html&quot; rel=&quot;nofollow&quot;&gt;http:&amp;#x2F;&amp;#x2F;blog.joda.org&amp;#x2F;2017&amp;#x2F;04&amp;#x2F;java-9-modules-jpms-basics.html&lt;/a&gt;</text></comment>