System.initPhase1 (formerly initializeSystemClasses) currently pre-loads the zip library. I'd like to drop this in jdk10/jdk10 so that it is loaded lazily and so reduce the code executed in this phase of startup. One motivation is that the zip code no longer uses native methods in libzip to access zip files, it is only now needed when inflating/deflating or for checksums. Another motivation is that jlink can be used to create runtime images that contain the main application and all modules that is needed (there is no class path or module path with JAR files in these cases and libzip is only needed if the image is created with compression).

The changes are trivial but something for early in a release to shake out any issues (attempts to touch this code in this past ended in tears due to bootstrapping issues, all issues that are in the past now).
   http://cr.openjdk.java.net/~alanb/8184917/webrev/index.html

-Alan

Reply via email to