New EA builds, contains initial implementation of current proposals

Malachi de Ælfweald malachid at gmail.com
Thu Jul 7 16:18:09 UTC 2016


Right - I was trying to find documentation on the new url format.  Using
the newly downloaded documentation, what I found was things like this
instead:

./api/javax/tools/StandardJavaFileManager.html:
<code>jar:lib/vendorA.jar!/com/vendora/LibraryClass.class</code>

I assumed that they just weren't updated yet; but since I couldn't find any
reference to the new format, I thought I would mention it.



Malachi de Ælfweald
http://www.google.com/profiles/malachid

On Thu, Jul 7, 2016 at 9:11 AM, Claes Redestad <claes.redestad at oracle.com>
wrote:

> Not sure how you meant 'jar:' is being replaced, so I might've just added
> to the confusion here.
>
> 'jrt' is the new scheme used to reference resources in the runtime image,
> e.g., "jrt:/java.base/java/net/URL.class", and in some places where you
> previously got a jar-based URL you might now get a jrt-based one, e.g.,
> when calling class.getResource.
>
> 'jar' is by no means going away, though, and will still be valid in a lot
> of places. I wouldn't be surprised if there are places in the docs which
> are in need of an update, though. :-)
>
> /Claes
>
>
> On 2016-07-07 18:01, Malachi de Ælfweald wrote:
>
>> Here's the subset that appear to be out of date:
>>
>> ./technotes/guides/javadoc/whatsnew-1.4.2.html
>> ./technotes/guides/io/fsp/zipfilesystemprovider.html
>> ./technotes/guides/jmx/tutorial/lookup.html
>> ./technotes/guides/jmx/examples/Lookup/jini/README
>> ./technotes/guides/security/jaas/tutorials/GeneralAcnAndAzn.html
>> ./technotes/guides/security/jaas/tutorials/GeneralAcnOnly.html
>> ./technotes/guides/security/crypto/MyJCE.java
>> ./technotes/guides/security/crypto/HowToImplAProvider.html
>> ./technotes/guides/security/jgss/tutorials/LoginSample.html
>> ./technotes/guides/security/jgss/tutorials/AcnAndAzn.html
>> ./technotes/guides/security/jgss/tutorials/MoreToDo.html
>> ./technotes/guides/security/jgss/tutorials/ClientServer.html
>> ./technotes/guides/management/jconsole.html
>> ./technotes/guides/troubleshoot/tooldescr.html
>> ./technotes/guides/rmi-iiop/interop.html
>> ./technotes/tools/windows/javah.html
>> ./technotes/tools/windows/javadoc.html
>> ./technotes/tools/windows/classpath.html
>> ./technotes/tools/unix/javah.html
>> ./technotes/tools/unix/javadoc.html
>> ./technotes/tools/unix/classpath.html
>> ./api/java/net/JarURLConnection.html
>> ./api/java/net/URLClassLoader.html
>> ./api/javax/xml/XMLConstants.html
>> ./api/javax/tools/StandardJavaFileManager.html
>>
>>
>>
>> Malachi de Ælfweald
>> http://www.google.com/profiles/malachid
>>
>> On Thu, Jul 7, 2016 at 8:59 AM, Malachi de Ælfweald <malachid at gmail.com
>> <mailto:malachid at gmail.com>> wrote:
>>
>>     Oh is that what it is?  Yeah, 0 of those either.
>>
>>
>>
>>     Malachi de Ælfweald
>>     http://www.google.com/profiles/malachid
>>
>>     On Thu, Jul 7, 2016 at 8:56 AM, Claes Redestad
>>     <claes.redestad at oracle.com <mailto:claes.redestad at oracle.com>> wrote:
>>
>>         Would that be 'jrt:'?
>>
>>         /Claes
>>
>>
>>         On 2016-07-07 17:50, Malachi de Ælfweald wrote:
>>
>>             I believe it was mentioned in one of the threads that part
>>             of this change
>>             include moving from jar: to jrl:
>>
>>             Checking the javadoc download, there are 0 mentions of
>>             'jrl:' but 50
>>             mentions of 'jar:'.
>>
>>
>>
>>
>>             Malachi de Ælfweald
>>             http://www.google.com/profiles/malachid
>>
>>             On Wed, Jul 6, 2016 at 11:36 AM, Alan Bateman
>>             <Alan.Bateman at oracle.com <mailto:Alan.Bateman at oracle.com>>
>>
>>             wrote:
>>
>>
>>                 The jigsaw/jake forest has been updated with an initial
>>                 implementation of
>>                 the proposals that Mark brought to the jpms-spec-experts
>>                 mailing list last
>>                 week. For those that don't build from source then the EA
>>                 build/downloads
>>                 [1] has also been refreshed.
>>
>>                 The changes in this build are initial/early
>>                 implementations of:
>>
>>                 #CompileTimeDependences
>>                 #ReflectiveAccessToNonExportedTypes
>>                 #ModuleAnnotations and #ModuleDeprecation
>>                 #ResourceEncapsulation and #ClassFilesAsResources
>>                 #ReflectiveAccessByInstrumentationAgents
>>                 #CustomizableAutomaticModuleNameMapping
>>
>>                 The updates involve changes to the binary form of a
>>                 module declaration so
>>                 if you have been playing with previous builds then you
>>                 will need to
>>                 re-compile your modules.
>>
>>                 One point on #ReflectiveAccessByInstrumentationAgents is
>>                 that it is just
>>                 java.lang.instrument for now. The underlying support for
>>                 the JVM TI
>>                 equivalent is in place, it's just not exposed as a JVM
>>                 TI function just yet.
>>
>>                 The discussion on some of these issues is ongoing so
>>                 don't treat anything
>>                 as final yet. We'll refresh the builds as needed over
>>                 the coming weeks.
>>
>>
>>                 One other significant change in this build is that it
>>                 has the new forms
>>                 for the command line options. As has been mentioned in a
>>                 number of threads
>>                 here, we are proposing that the new command line options
>>                 for modules use
>>                 the GNU style. Jon Gibbons will be posting an
>>                 informational JEP on this
>>                 topic soon. JEP 261 and JEP 282 will be updated soon to
>>                 reflect the updated
>>                 proposal. For now, the old => new mapping is:
>>
>>                 `-modulepath` (or `-mp`) => `--module-path` (or `-p`)
>>                 `-upgrademodulepath` => `--upgrade-module-path`
>>                 `-addmods` => `--add-modules`
>>                 `-limitmods` => `--limit-modules`
>>                 `-listmods` => `--list-modules`
>>                 `-XaddReads` => `--add-reads`
>>                 `-XaddExports` => `--add-exports`
>>                 `-Xpatch` => `--patch-module`
>>
>>                 The `java` and `javac` launchers have been updated, as
>>                 have the `javadoc`,
>>                 `jlink`, `jar` and `jmod` tools. For now, the old form
>>                 of the module
>>                 options (except `-listmods`) still work as before as it
>>                 will take time to
>>                 transition. The jtreg test harness will need to be
>>                 updated too.
>>
>>                 The JEPs will detail the option syntax but briefly: the
>>                 format of the
>>                 values to these options has not changed, the separator
>>                 between the option
>>                 and value can be space or `=` in the case of `java` or
>>                 `javac`, the
>>                 separator must be `=` when using the JNI invocation API
>>                 or _JAVA_OPTIONS or
>>                 a VM options file.
>>
>>                 Two other things to mention are `--class-path`
>>                 (`-classpath` and `-cp`
>>                 work as before of course), and `javac
>>                 --inherit-runtime-environment` to
>>                 inherit the module configuration from the runtime
>>                 environment into the
>>                 compilation environment.
>>
>>
>>                 So please try it out. As always, the most valuable
>>                 feedback is from those
>>                 trying out the builds to migrate or modularize existing
>>                 libraries and
>>                 applications.
>>
>>                 -Alan
>>
>>                 [1] https://jdk9.java.net/jigsaw/
>>
>>
>>
>>
>>
>>
>>


More information about the jigsaw-dev mailing list