Index: trunk/test/unit/org/openstreetmap/josm/testutils/JOSMTestRules.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/testutils/JOSMTestRules.java	(revision 17688)
+++ trunk/test/unit/org/openstreetmap/josm/testutils/JOSMTestRules.java	(revision 17693)
@@ -3,4 +3,6 @@
 
 import java.awt.Color;
+import java.awt.GraphicsEnvironment;
+import java.awt.Toolkit;
 import java.awt.Window;
 import java.awt.event.WindowEvent;
@@ -15,4 +17,5 @@
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
+import java.lang.reflect.Method;
 import java.nio.charset.StandardCharsets;
 import java.security.GeneralSecurityException;
@@ -22,4 +25,5 @@
 import java.util.TimeZone;
 import java.util.logging.Handler;
+import java.util.logging.Level;
 
 import org.awaitility.Awaitility;
@@ -70,5 +74,7 @@
 import org.openstreetmap.josm.tools.Logging;
 import org.openstreetmap.josm.tools.MemoryManagerTest;
+import org.openstreetmap.josm.tools.PlatformManager;
 import org.openstreetmap.josm.tools.Territories;
+import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.bugreport.ReportedException;
 import org.openstreetmap.josm.tools.date.DateUtils;
@@ -614,4 +620,5 @@
                 }
 
+                workaroundJdkBug8159956();
                 new MainApplication();
                 JOSMFixture.initContentPane();
@@ -620,4 +627,17 @@
                 JOSMFixture.initMainMenu();
             }
+        }
+    }
+
+    private void workaroundJdkBug8159956() {
+        try {
+            if (PlatformManager.isPlatformWindows() && Utils.getJavaVersion() == 8 && GraphicsEnvironment.isHeadless()) {
+                // https://bugs.openjdk.java.net/browse/JDK-8159956
+                Method initIDs = Toolkit.class.getDeclaredMethod("initIDs");
+                initIDs.setAccessible(true);
+                initIDs.invoke(Toolkit.getDefaultToolkit());
+            }
+        } catch (Exception e) {
+            Logging.log(Level.WARNING, "Failed to Toolkit.initIDs", e);
         }
     }
