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

java.lang.IncompatibleClassChangeError is thrown at runtime

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2 P2
    • 8
    • 8
    • core-libs

      java.lang.IncompatibleClassChangeError is thrown when running pkg.c.Derived from attached sources.

      This has been encountered in build 85 and reproduced on Windows x64 and on Solaris 10 x86/x64.

      The output is as follows:

      Exception in thread "main" java.lang.IncompatibleClassChangeError
      at java.lang.invoke.MethodHandleNatives.linkMethodHandleConstant(MethodHandleNatives.java:383)
      at pkg.c.Derived.check(Derived.java:15)
      at pkg.c.Derived.main(Derived.java:11)
      Caused by: java.lang.IllegalAccessException: symbolic reference class is not public: interface pkg.Base$Iface, from pkg.c.Derived
      at java.lang.invoke.MemberName.makeAccessException(MemberName.java:732)
      at java.lang.invoke.MethodHandles$Lookup.checkSymbolicClass(MethodHandles.java:1045)
      at java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:1036)
      at java.lang.invoke.MethodHandles$Lookup.linkMethodHandleConstant(MethodHandles.java:1294)
      at java.lang.invoke.MethodHandleNatives.linkMethodHandleConstant(MethodHandleNatives.java:381)
      ... 2 more


      Filing v.s. java.util.streams subcomponent initially, but it looks like the issue is either in the VM or compiler...

            rfield Robert Field (Inactive)
            grakov Georgiy Rakov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: