Hi David and Alan,
Thank you for your comments.
The change to the MakeClasslist tool to use TraceClassLoadingPreorder
was made prior to my changes. The following code has been in
MakeClasslist.java for a long time. I was unable to determine who had
made this change or why.
// Understand only "Loading" from
-XX:+TraceClassLoadingPreorder.
// This ignores old "Loaded" from -verbose:class to force
correct
// classlist generation on Mustang.
if (t.equals("Loading")) {
t = tok.nextToken();
t = t.replace('.', '/');
So, I don't know why TraceClassLoadingPreorder was chosen instead of
-verbose:class or TraceClassLoading.
The purpose of my changes are to update the comments to accurately
reflect what the code currently does and to fix a bug in
MakeClasslist.java's 'for' loop where the wrong set of strings is used.
I plan to file a bug stating that the classlists need to be updated for
JDK 8 and assign it to release engineering.
Thanks, Harold
On 8/12/2013 4:46 AM, Alan Bateman wrote:
On 07/08/2013 20:51, harold seigel wrote:
Hi,
Please review this small fix for bug 8022259. This change fixes a
bug in the MakeClasslist tool and updates its README.txt file.
webrev: http://cr.openjdk.java.net/~hseigel/bug_8022259/
<http://cr.openjdk.java.net/%7Ehseigel/bug_8022259/>
bug: http://bugs.sun.com/view_bug.do?bug_id=8022259
JBS bug: https://jbs.oracle.com/bugs/browse/JDK-8022259
I tested the change by creating a testlist using the modified
MakeClasslist tool and following the information in the changed
README.txt file.
Thanks! Harold
Can you explain it further as to why TraceClassLoadingPreorder traces
should be used rather than the TraceClassLoading traces? I ask because
we rarely see changes to the *.classlist files and to my knowledge,
all previous versions used the TraceClassLoading output.
Also, are you planning to update the *.classlist files too? They
haven't been refreshed in a long time and would be good to get them
updated (it should also sort out a slew of warnings emitted in the
build about missing classes).
-Alan.