On 12/15/15 07:41, Lois Foltan wrote:
On 12/10/2015 3:03 AM, serguei.spit...@oracle.com wrote:
Please, review this initial fix for the Jigsaw Bill milestone task:
https://bugs.openjdk.java.net/browse/JDK-8049365
Jdk webrev:
http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/jdk/8049365-Jigsaw-jdk.0/
Hotspot webrev:
http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/hotspot/8049365-Jigsaw-hs.0/
Summary:
It is expected that the JDI and JDWP update for modules will have
several iterations.
This is the initial one, and it introduces a very minimal
functionality.
The main purpose of this preliminary review is to make sure the JDI
and JDWP update
for modules goes in a right direction and has nothing obviously wrong.
It does not include yet the API's for introspection of the
ModuleDescriptor, Configuration and Layer.
There are no convincing use cases for it yet.
It is still TBD to contact and get more feedback from the NetBeans
and Eclipse debuggers teams.
We also could give them our custom build to try.
This fix temporarily adds a VM support for the JDI allModules() as a
JNI function GetAllModules().
Any feedback on the Hotspot webrev as to how to implement it better
is welcome.
Hi Serguei,
This is definitely a good start for updating JDK and JDWP for
modules. I did have a chance to look over the hotspot changes. I
would really prefer not to introduce a new ModulesTable data structure
(modules.c/hpp). The goal of the JVM support for jigsaw was to have
one stop shopping with ModuleEntryTable and PackageEntryTable. Those
data structures keep track and record the module definitions. As a
matter of fact, last week Harold completely removed JDK 9's current
PackageInfo Hashtable in the jake repo in favor of using the new
PackageEntryTable. I can help by enhancing ModuleEntryTable to
provide methods that Modules::get_all_modules() could call. Would you
be okay with that?
Hi Lois,
Thank you a lot for looking at this!
It would be perfect if you provide methods that
Modules::get_all_modules() could call.
As Alan noted, the use will be changed from JNI to JVMTI::GetAllModules().
Thanks!
Serguei
Thanks,
Lois
The plan is (as suggested by Alan) to re-implement it on the JVMTI
level.
It is a part of another Jigsaw Bill milestone task:
https://bugs.openjdk.java.net/browse/JDK-8049364
Update JVM TI for modules
Thanks,
Serguei