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

[OpenJDK] we should not throw UnsatisfiedLinkError when user wants MToolkit

XMLWordPrintable

    • x86, sparc
    • linux, linux_ubuntu, solaris_10

      If jdk is built w/o MToolkit and user specifies MToolkit as default one (using AWT_TOLKIIT
      env.var. or awt.toolkit java property) we throw UnsatisfiedLinkError. E.g.
      Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: /awt/yan/jdk7.fo/build/linux-i586-openjdk/lib/i386/motif21/libmawt.so
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1650)
              at java.lang.Runtime.load0(Runtime.java:770)
              at java.lang.System.load(System.java:1005)
              at java.lang.ClassLoader$NativeLibrary.load(Native Method)
              at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1668)
              at java.lang.Runtime.loadLibrary0(Runtime.java:823)
              at java.lang.System.loadLibrary(System.java:1030)
              at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
              at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:30)
              at java.security.AccessController.doPrivileged(Native Method)
              at sun.awt.NativeLibLoader.loadLibraries(NativeLibLoader.java:38)
              at sun.awt.DebugHelper.<clinit>(DebugHelper.java:29)
              at java.awt.Component.<clinit>(Component.java:540)

      We should not require mawt library and should fail with AWTError as with any other non-existent toolkit. E.g.:
      Exception in thread "main" java.awt.AWTError: Toolkit not found: sun.awt.motif.WToolkit
              at java.awt.Toolkit$2.run(Toolkit.java:856)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:841)
              at java.awt.Window.getToolkit(Window.java:1142)
              at java.awt.Window.init(Window.java:369)
              at java.awt.Window.<init>(Window.java:407)
              at java.awt.Frame.<init>(Frame.java:402)
              at java.awt.Frame.<init>(Frame.java:367)
              at AWTTest.<init>(AWTTest.java:7)
              at AWTTest.main(AWTTest.java:41)

            denis Denis Fokin (Inactive)
            son Oleg Sukhodolsky (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: