RFR: 8009428 and 8009429 - Profile related fixes and clean ups

David Holmes david.holmes at oracle.com
Mon Mar 11 01:24:39 UTC 2013

I had overlooked the need to update the ct.sym creation tool to 
recognize the new syntax in the profile spec file. That process also 
uncovered a few bugs in the listing that needed correcting.

The javadoc generation of compact profile information is not quite 
right, but that will be handled in a seperate bug.

Updated webrevs at:




No change from v1. Simply reverses the Nashorn change to $ processing.



Updated the logic to look for FULL_JRE instead of PROFILE_4. And as a 
result of that needed to make the logic explicitly aware that there are 
3 compact profiles plus the full JRE.



Changes from v1:

- I stopped trying to use a new wildcard syntax for included/excluded 
types. The only options are *.class else a full type name with $ 
replaced by $$. (The wildcard support would need more extensive changes 
to the ct.sym tool and for 4 classes it isn't worth it).

- Types explicitly excluded from one profile must be explicitly included 
in a higher one (or the full JRE). (This happened to work by accident 
because we were dealing with compact3 and a full JRE).

- The package sun/beans no longer exists

- Fixed up include packages to capture new types ie jdk instead of 
jdk/internal so that we include the jdk.Supported annotation class

- Removed additional redundant sub-packages

Thanks for the follow up reviews. Erik's review stands as no further 
changes made to the actual build logic.


On 8/03/2013 9:28 PM, David Holmes wrote:
> On 8/03/2013 7:19 PM, Alan Bateman wrote:
>> On 08/03/2013 01:48, David Holmes wrote:
>>> Not sure which is best list for this given Alan will likely be the
>>> only reviewer anyway :)
>>> Webrevs under:
>>> http://cr.openjdk.java.net/~dholmes/8009428_8009429/
>> As further background to others, the reverting of the $ substitution
>> became possible when Nashorn removed $ from its generated classes [1].
>> I've looked through the changes and they look really good to me. Putting
>> $< in single quotes to avoid shell expansion is the solution that I
>> could not find when adding the de-beaning recipes a few months ago. It's
>> great to see PROFILE_4 renamed to FULL_JRE and is also great to remove
>> the redundant sub-packages from the include lists. For
>> profiles-rtjar-includes then I think it makes it much more readable and
>> maintainable. Two minor inconsistencies: the sub-packages of
>> javax.naming are listed and com/sun/jndi/ has a trailing slash.
> Fixed - well spotted!
>> One probable side effect of removing the redundant sub-packages will be
>> the javadoc. The one case to date where we didn't list sub-packages is
>> java.time (because there are still changes going on there) and that the
>> result is that the sub-packages of java.time don't show up in the
>> profiles view. I created 8008367 a few weeks for that and I suspect that
>> once these changes are pushed that the profiles view will be very
>> incomplete. I don't think this should be a reason to hold off your
>> changes as the profiles view isn't right now anyway. Hopefully Bhavesh
>> will get to this soon.
> Now I'm a little concerned. I had not considered whether javac/javadoc
> considered these to be complete lists. They have to know how to combine
> the includes at a low-level with the excludes of a higher-level - and
> potentially vice-versa.
>> I think Erik should review this too as it's important that the build
>> changes in jdk8/tl will merge easily with changes going into jdk8/build.
> OK.
> Thanks,
> David
>> -Alan.
>> [1] http://hg.openjdk.java.net/jdk8/tl/nashorn/rev/fe5211fc3114

More information about the core-libs-dev mailing list