Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8308960

Decouple internal Version and OperatingSystem classes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 21
    • None
    • core-libs
    • None
    • b25

      The implementation of the ClassFileDumper exposed a cycle in the startup that results in ExceptionInInitializer caused by the initialization of the internal OperatingSystem enum.

      The early initialization of the OperationSystem enum produces a cascade of MethodHandle initialization that should be deferred.

      The file system initialization on the Mac needs to check the OS version number. Currently, by calling OperationSystem.version().

      Decoupling the jdk.internal.util.Version class from OperatingSystem allows it to avoid the initialization cycle.

      Fixing this allows the ClassFileDumper to use the preferred java.nio.file.Path API.

            rriggs Roger Riggs
            rriggs Roger Riggs
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: