JDK-8193471 : Startup regression due to JDK-8185582
Type:Bug
Component:core-libs
Sub-Component:java.util.jar
Priority:P2
Status:Resolved
Resolution:Fixed
Submitted:2017-12-13
Updated:2017-12-18
Resolved:2017-12-13
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
JDK-8185582 added lambdas and method references to code that is run early during startup on any startup test that loads classes and/or resources from a jar.
Comments
Ah, these need to be instances of static nested classes, not anonymous inner classes. Since the latter unconditionally hold a reference to the enclosing instance -- unlike lambdas -- they'll disrupt tests for things like reference processing and finalization.