JDK-8064783 : Change rmic to use jrt:/ instead of jimagefs
Type:Enhancement
Component:core-libs
Sub-Component:java.rmi
Priority:P2
Status:Resolved
Resolution:Fixed
Submitted:2014-11-13
Updated:2016-01-06
Resolved:2014-11-19
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
In jigsaw/m2, rmic is currently using the jimage file system. It needs to migrate to jrt:/ so that we can remove jimagefs.
Comments
Changeset: 835a66c32fcf
Author: sundar
Date: 2014-11-19 18:48 +0530
URL: http://hg.openjdk.java.net/jigsaw/m2/jdk/rev/835a66c32fcf
8064783: Change rmic to use jrt:/ instead of jimagefs
Reviewed-by: alanb
! src/java.base/share/classes/jdk/internal/jrtfs/jrtls.js
! src/jdk.rmic/share/classes/sun/tools/java/ClassPath.java
19-11-2014
Attachment rmic_webrev.zip:
contains changes to rmic to make it work with "jrt" file system. Package to module mapping is created/cached as needed by rmic tool itself.
19-11-2014
Attachment package_to_module_webrev.zip:
Added "/META-INF/package-to-module.properties" as properties resource that exposes package name to module. rmic ClassPath uses it to get to module based package directories and .class resources. This should be useful to other tools as well (rather than everytool building that map "manually").
But based on discussion with team, it was decided not to go with this additional resource in jrt file system. Each tool will build it's own packages-to-modules map as needed.
In future, we *may* consider adding
/modules/module/package/resource.class
(example /modules/java.base/java/lang/Object.class)
and
/packages/java/lang -> (links to) /modules/java.base/java/lang
and so on.