Why does Oracle SQL Developer have null pointer exception on startup on Mac OS

RyanS :

When I launch a fresh install of Oracle SQL Developer the icon bounces in the dock a bit then disappears.

When I launch it via CLI I get this error:

Oracle SQL Developer
 Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.

java.lang.IllegalStateException: Problem creating splash screen on ETD.
    at oracle.ide.osgi.boot.SplashScreenImpl.SynchronizeWithEdt(SplashScreenImpl.java:541)
    at oracle.ide.osgi.boot.api.SplashScreen.createInstance(SplashScreen.java:66)
    at oracle.ide.osgi.boot.OracleIdeLauncher.showSplashScreen(OracleIdeLauncher.java:828)
    at oracle.ide.osgi.boot.OracleIdeLauncher.main(OracleIdeLauncher.java:109)
Caused by: java.lang.reflect.InvocationTargetException
    at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1328)
    at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1303)
    at java.desktop/javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1475)
    at oracle.ide.osgi.boot.SplashScreenImpl.SynchronizeWithEdt(SplashScreenImpl.java:537)
    ... 3 more
Caused by: java.lang.NullPointerException
    at java.desktop/java.awt.Window.init(Window.java:495)
    at java.desktop/java.awt.Window.<init>(Window.java:535)
    at java.desktop/java.awt.Frame.<init>(Frame.java:423)
    at java.desktop/java.awt.Frame.<init>(Frame.java:388)
    at java.desktop/javax.swing.JFrame.<init>(JFrame.java:180)
    at oracle.ide.osgi.boot.OracleIdeLauncher$2.getHiddenWindow(OracleIdeLauncher.java:807)
    at oracle.ide.osgi.boot.api.SplashScreen$1.run(SplashScreen.java:61)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:303)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
    at java.desktop/java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:717)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:711)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:89)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:199)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
A fatal error in the IDE boostraping code. Exiting ...

I have tried to verify the JDK version is correct, and there are no other missing dependencies. What is causing this error?

Edit:

Currently connected via Dell D6000 dock over minidisplay port, using DisplayLink drivers

MacBook Pro (15-inch, 2017), High Sierra v10.13.3, DisplayLinkDriver v4.0.0 (85514)

$ java -version
java version "9.0.4"
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
RyanS :

After pulling my hair out, a coworker discovered the cause: I was using multiple monitors.

It turns out the splash screen was trying to display on the main monitor but wasnt able to for some reason. Disconecting my extra displays solved the issue and allowed me to launch the application. After launching I plugged in the displays and dragged the window over to them, no issue.

TLDR: set your main monitor to the Macbook screen or use one monitor to launch

You can change the main monitor by using spotlight search for displays and then drag the white bar to your actual computers display (in my case the macbook screen).

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=459687&siteId=1