[9 + 8u] RFR - 8066612: Add a test that will call getDeclaredFields() on all classes and try to set them accessible.
daniel.fuchs at oracle.com
Wed Dec 3 22:47:30 UTC 2014
This is a review for a new test which has a different
implementation for JDK 8 & JDK 9
During the review of
JDK-8065552: setAccessible(true) on fields of Class may throw
it was remarked that such a test would be useful.
So here is such a test that loads all classes from the BCL, calls
getDeclaredFields() for each of them, and attempt to set
each field to accessible.
On JDK 8 and JDK 9 this is quite fast (~ 3.2sec when a security
manager is on).
The differences between 8 & 9 are limited to:
- on 8 we use 'null' (BCL)
- on 9 we use the system class loader.
- Building the stream of class names:
- on 8 we have jars & folders in the boot class path
- on 9 we have .jimage files
PS: For the curious I have also experimented with a version of this
test for JDK 7u  (where Streams have been replaced by Lists).
On 7 you need to either increase the PermGen size or split the
test into several invocations (the method I chose in ).
 don't review the link below - it's just for the record
if/when someone wants to backport on 7u...
More information about the core-libs-dev