Jon points out that javac should also be updated. javac currently opens the JMOD file with JarFileSystem. Jon and I discussed this and we agree to keep the current workaround for now and add the validation to detect if the JMOD file is valid.
Updated webrev: http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8166860/webrev.02/ The jdk change is the same as webrev.01. The only change is in langtools repo. Mandy > On Sep 28, 2016, at 9:56 PM, Mandy Chung <mandy.ch...@oracle.com> wrote: > > Webrev: > http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8166860/webrev.00/index.html > > The change adds a magic number in jmod file to enable future revision of the > JMOD format. It's currently a zip file and may change in a future release. > JmodFile opens the file to validate the magic header and version. Module > path, module reader, jlink are updated in this patch. This implementation > opens zip file as well to support look up of a named entry. There isn’t any > simple way to avoid opening the jmod file twice unless it digs into the > ZipFile internals. Since jmod is not performance critical (not supported at > runtime) and pure Java modules can be packaged as modular JARs, I go with > this approach and can look into it when this becomes a real issue. > > Mandy