Index: trunk/src/org/openstreetmap/josm/tools/Utils.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 13519)
+++ trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 13520)
@@ -1575,5 +1575,5 @@
     /**
      * Returns the Java version as an int value.
-     * @return the Java version as an int value (8, 9, etc.)
+     * @return the Java version as an int value (8, 9, 10, etc.)
      * @since 12130
      */
@@ -1591,5 +1591,5 @@
         int dashPos = version.indexOf('-');
         return Integer.parseInt(version.substring(0,
-                dotPos > -1 ? dotPos : dashPos > -1 ? dashPos : 1));
+                dotPos > -1 ? dotPos : dashPos > -1 ? dashPos : version.length()));
     }
 
Index: trunk/test/unit/org/openstreetmap/josm/tools/UtilsTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/tools/UtilsTest.java	(revision 13519)
+++ trunk/test/unit/org/openstreetmap/josm/tools/UtilsTest.java	(revision 13520)
@@ -213,4 +213,13 @@
             System.setProperty("java.version", "9.0.1");
             assertEquals(9, Utils.getJavaVersion());
+
+            System.setProperty("java.version", "10");
+            assertEquals(10, Utils.getJavaVersion());
+
+            System.setProperty("java.version", "10-ea");
+            assertEquals(10, Utils.getJavaVersion());
+
+            System.setProperty("java.version", "10.0.1");
+            assertEquals(10, Utils.getJavaVersion());
         } finally {
             System.setProperty("java.version", javaVersion);
