diff --git a/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java b/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java
index 98a584064e43f0235c639547e6ebafd711200284..69ee850d27649d9fa27510dd99175f70ad67be36 100644
--- a/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java
+++ b/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java
@@ -344,8 +344,9 @@ public class RouterConsoleRunner implements RouterApp {
         boolean noPack200 = (PluginStarter.pluginsEnabled(_context) || !NewsHelper.isUpdateDisabled(_context)) &&
                             !FileUtil.isPack200Supported();
         boolean openARM = SystemVersion.isARM() && SystemVersion.isOpenJDK() && !SystemVersion.isJava9();
+        boolean isZero = SystemVersion.isZeroVM();
         boolean isJava11 = false; // SystemVersion.isJava11();
-        if (noJava7 || noPack200 || openARM || isJava11) {
+        if (noJava7 || noPack200 || openARM || isZero || isJava11) {
             String s = "Java version: " + System.getProperty("java.version") +
                        " OS: " + System.getProperty("os.name") + ' ' +
                        System.getProperty("os.arch") + ' ' +
@@ -368,6 +369,11 @@ public class RouterConsoleRunner implements RouterApp {
                 log.logAlways(net.i2p.util.Log.WARN, s);
                 System.out.println("Warning: " + s);
             }
+            if (isZero) {
+                s = "OpenJDK Zero is a very slow interpreter-only JVM. Not recommended for use with I2P. Please use a faster JVM if possible.";
+                log.logAlways(net.i2p.util.Log.WARN, s);
+                System.out.println("Warning: " + s);
+            }
             //if (isJava11) {
             //    s = "Java 11+ support is beta, and not recommended for general use";
             //    log.logAlways(net.i2p.util.Log.WARN, s);
diff --git a/core/java/src/net/i2p/util/SystemVersion.java b/core/java/src/net/i2p/util/SystemVersion.java
index 1844731f82ef14e3316ad23e6505befbfa92e6a3..c93a7baf3bbc9a46862a2bf6acb4da30c15fbdfd 100644
--- a/core/java/src/net/i2p/util/SystemVersion.java
+++ b/core/java/src/net/i2p/util/SystemVersion.java
@@ -33,6 +33,8 @@ public abstract class SystemVersion {
                                           System.getProperty("os.arch").equals("amd64");
     private static final boolean _isGentoo = System.getProperty("os.version").contains("gentoo") ||
                                              System.getProperty("os.version").contains("hardened");  // Funtoo
+    // Could also check for java.vm.info = "interpreted mode"
+    private static final boolean _isZero = System.getProperty("java.vm.name").contains("Zero");
     private static final boolean _isAndroid;
     private static final boolean _isApache;
     private static final boolean _isGNU;
@@ -73,7 +75,7 @@ public abstract class SystemVersion {
         _isLinuxService = !_isWin && !_isMac && !_isAndroid &&
                           (DAEMON_USER.equals(System.getProperty("user.name")) ||
                            (_isGentoo && GENTOO_USER.equals(System.getProperty("user.name"))));
-        _isSlow = _isAndroid || _isApache || _isArm || _isGNU || getMaxMemory() < 48*1024*1024L;
+        _isSlow = _isAndroid || _isApache || _isArm || _isGNU || _isZero || getMaxMemory() < 48*1024*1024L;
 
         int sdk = 0;
         if (_isAndroid) {
@@ -163,6 +165,14 @@ public abstract class SystemVersion {
         return _isX86;
     }
 
+    /**
+     *  Is this a very slow interpreted mode VM?
+     *  @since 0.9.38
+     */
+    public static boolean isZeroVM() {
+        return _isZero;
+    }
+
     /**
      *  Our best guess on whether this is a slow architecture / OS / JVM,
      *  using some simple heuristics.
@@ -347,6 +357,6 @@ public abstract class SystemVersion {
         System.out.println("Windows  : " + isWindows());
         System.out.println("Wrapper  : " + hasWrapper());
         System.out.println("x86      : " + isX86());
-
+        System.out.println("Zero JVM : " + isZeroVM());
     }
 }