On Jun 22, 2010, at 2:41 PM, Jonathan Gibbons wrote:
Kelly,
It's not a problem with your edits, but the contents of $
(NOT_RT_JAR_LIST) arguably need cleaning up sometime.
I see all of com/sun/tools and additional redundant entries for com/
sun/tools/classfile/, com/sun/tools/javap/, and way further down com/
sun/tools/script/shell/.
Perhaps it would help to sort the list (to make such redundant
entries more obvious) and/or to build the list from macros that
don't focus on what shouldn't be in rt.jar as much as what should be
in other jar files -- in other words, NOT_RT_JAR_LIST should include
all files and directories targeted at to9ols.jar.
I don't disagree, just trying to keep the hole I was digging to a
reasonable depth. ;^)
In the new JarReorder tool, the comments about sorting on lines
257-259 do not agree with the impl that follows (which uses an
unsorted HashSet)
I'll edit the comment, I used HashSet so it was faster, but forgot to
sort the final file list,
so I added a Collections.sort() call around line 157, so the final
file order is predictable.
Also, while not wrong, you don't need the file separator handling in
cleanFilePath, since the arg string comes from File.getPath, which
always returns a string with normalized separators.
But cleanFilePath is used on the command line arguments too, which
might not be clean, or
might use / instead of \.
Figured it was harmless, and better to have a consistent handling of
the names.
-kto
-- Jon
On 06/22/2010 02:13 PM, Kelly O'Hair wrote:
6933622: Duplicate class files in rt.jar and charsets.jar
6895003: JarReorder is not excluding a requested file.
6939022: Source code adjustments for parfait compilation
http://cr.openjdk.java.net/~ohair/openjdk7/jar-reorder/webrev/
The first two changes are related. Excluding items with JarReorder
was not working
if the item was also in the ordered classlist. Now excludes apply
to the ordered classlist.
This JarReorder problem is an old one, one which we also ran into
when
javax/crypto/SecretKey.class showed up in rt.jar even when it was
excluded.
This utility class has been cleaned up and hopefully is considered
an improved version.
The third fix is a minor change to Poller.c where the C macro ##
operator was used on
two quoted strings, which caused the Parfait tool some problems and
is unncessary.
These same changes will also be applied to OpenJDK6.
-kto