Index: /trunk/src/org/openstreetmap/josm/tools/PlatformHook.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/PlatformHook.java	(revision 19540)
+++ /trunk/src/org/openstreetmap/josm/tools/PlatformHook.java	(revision 19541)
@@ -17,9 +17,7 @@
 import java.security.cert.CertificateException;
 import java.security.cert.X509Certificate;
-import java.text.DateFormat;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
-import java.util.Date;
 import java.util.List;
 
@@ -27,5 +25,4 @@
 import org.openstreetmap.josm.io.CertificateAmendment.NativeCertAmend;
 import org.openstreetmap.josm.spi.preferences.Config;
-import org.openstreetmap.josm.tools.date.DateUtils;
 
 /**
@@ -292,24 +289,4 @@
          */
         void sanityCheckFailed(String title, boolean canContinue, String... message);
-    }
-
-    /**
-     * Checks if the running version of Java has expired, proposes to user to update it if needed.
-     * @param callback Java expiration callback
-     * @since 12270 (signature)
-     * @since 12219
-     */
-    default void checkExpiredJava(JavaExpirationCallback callback) {
-        Date expiration = Utils.getJavaExpirationDate();
-        if (expiration != null && expiration.before(new Date())) {
-            String latestVersion = Utils.getJavaLatestVersion();
-            String currentVersion = Utils.getSystemProperty("java.version");
-            // #17831 WebStart may be launched with an expired JRE but then launching JOSM with up-to-date JRE
-            if (latestVersion == null || !latestVersion.equalsIgnoreCase(currentVersion)) {
-                callback.askUpdateJava(latestVersion != null ? latestVersion : "latest",
-                        Config.getPref().get("java.update.url", getJavaUrl()),
-                        DateUtils.getDateFormat(DateFormat.MEDIUM).format(expiration), false);
-            }
-        }
     }
 
Index: /trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 19540)
+++ /trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 19541)
@@ -91,5 +91,4 @@
         }
         warnSoonToBeUnsupportedJava(javaCallback);
-        checkExpiredJava(javaCallback);
         PlatformHook.super.startupHook(javaCallback, sanityCheckCallback);
     }
Index: /trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java	(revision 19540)
+++ /trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java	(revision 19541)
@@ -157,5 +157,4 @@
     public void startupHook(JavaExpirationCallback javaCallback, SanityCheckCallback sanityCheckCallback) {
         warnSoonToBeUnsupportedJava(javaCallback);
-        checkExpiredJava(javaCallback);
         PlatformHook.super.startupHook(javaCallback, sanityCheckCallback);
     }
Index: /trunk/src/org/openstreetmap/josm/tools/Utils.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 19540)
+++ /trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 19541)
@@ -32,8 +32,6 @@
 import java.security.NoSuchAlgorithmException;
 import java.text.Bidi;
-import java.text.DateFormat;
 import java.text.MessageFormat;
 import java.text.Normalizer;
-import java.text.ParseException;
 import java.util.AbstractCollection;
 import java.util.AbstractList;
@@ -42,5 +40,4 @@
 import java.util.Collection;
 import java.util.Collections;
-import java.util.Date;
 import java.util.Iterator;
 import java.util.List;
@@ -1706,29 +1703,4 @@
 
     /**
-     * Returns the JRE expiration date.
-     * @return the JRE expiration date, or null
-     * @since 12219
-     */
-    public static Date getJavaExpirationDate() {
-        try {
-            Object value;
-            Class<?> c = Class.forName("com.sun.deploy.config.BuiltInProperties");
-            try {
-                value = c.getDeclaredField("JRE_EXPIRATION_DATE").get(null);
-            } catch (NoSuchFieldException e) {
-                // Field is gone with Java 9, there's a method instead
-                Logging.trace(e);
-                value = c.getDeclaredMethod("getProperty", String.class).invoke(null, "JRE_EXPIRATION_DATE");
-            }
-            if (value instanceof String) {
-                return DateFormat.getDateInstance(3, Locale.US).parse((String) value);
-            }
-        } catch (IllegalArgumentException | ReflectiveOperationException | SecurityException | ParseException e) {
-            Logging.debug(e);
-        }
-        return null;
-    }
-
-    /**
      * Returns the latest version of Java, from Oracle website.
      * @return the latest version of Java, from Oracle website
