Index: trunk/.travis.yml
===================================================================
--- trunk/.travis.yml	(revision 14315)
+++ trunk/.travis.yml	(revision 14316)
@@ -2,20 +2,27 @@
 script:
   - ant -version
-  - (eval "$ANT_INVOCATION $(test ${TRAVIS_JDK_VERSION:0:4} = open && echo -DnoJavaFX=true) test-unit-hardfail")
+  - $ANT_INVOCATION -DnoJavaFX=true test-unit-hardfail
   - "grep -L ', Failures: 0, Errors: 0, ' test/report/*.txt | xargs cat"
-os: linux
-dist: trusty
 env:
   - ANT_INVOCATION="xvfb-run ant -Dtest.headless=false"
   - ANT_INVOCATION="ant -Dtest.headless=true"
 jdk:
-  - oraclejdk11
-  - oraclejdk10
   - openjdk8
+  - openjdk11
 matrix:
   include:
+  - os: linux
+    dist: trusty
   - os: osx
-    osx_image: xcode9.2
+    osx_image: xcode9.3
     jdk: ~
+    env: ANT_INVOCATION="ant -Dtest.headless=true"
+  - os: osx
+    osx_image: xcode10
+    jdk: ~
+    env: ANT_INVOCATION="ant -Dtest.headless=true"
+  - os: windows
+    language: shell
+    jdk: oraclejdk11
     env: ANT_INVOCATION="ant -Dtest.headless=true"
 before_install:
@@ -23,2 +30,3 @@
   - tar -xzvf apache-ant-1.10.5-bin.tar.gz
   - export PATH=`pwd`/apache-ant-1.10.5/bin:$PATH
+  - if [ "$TRAVIS_OS_NAME" == "windows" ] ; then choco install jdk11 && export JAVA_HOME="/c/Program Files/Java/jdk-11" ; fi
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 14315)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 14316)
@@ -6,4 +6,5 @@
 
 import java.awt.Desktop;
+import java.awt.GraphicsEnvironment;
 import java.awt.Image;
 import java.awt.Window;
@@ -74,10 +75,10 @@
                 quitHandler, aboutHandler, openFilesHandler, preferencesHandler}, this);
             Object appli = eawtApplication.getConstructor((Class[]) null).newInstance((Object[]) null);
-            if (Utils.getJavaVersion() >= 9) {
-                setHandlers(Desktop.class, quitHandler, aboutHandler, openFilesHandler, preferencesHandler, proxy, Desktop.getDesktop());
-            } else {
+            if (Utils.getJavaVersion() < 9) {
                 setHandlers(eawtApplication, quitHandler, aboutHandler, openFilesHandler, preferencesHandler, proxy, appli);
                 // this method has been deprecated, but without replacement. To remove with Java 9 migration
                 eawtApplication.getDeclaredMethod("setEnabledPreferencesMenu", boolean.class).invoke(appli, Boolean.TRUE);
+            } else if (!GraphicsEnvironment.isHeadless()) {
+                setHandlers(Desktop.class, quitHandler, aboutHandler, openFilesHandler, preferencesHandler, proxy, Desktop.getDesktop());
             }
             // setup the dock icon. It is automatically set with application bundle and Web start but we need
