diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/servlet/setup/JvmSmokeTests.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/servlet/setup/JvmSmokeTests.java index c9241320f..4a5630801 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/servlet/setup/JvmSmokeTests.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/servlet/setup/JvmSmokeTests.java @@ -22,9 +22,26 @@ public class JvmSmokeTests implements ServletContextListener { ServletContext ctx = sce.getServletContext(); StartupStatus ss = StartupStatus.getBean(ctx); + checkJvmLevel(ss); checkTempDirectory(ss); } + /** + * We need to run at 1.7 or later. + */ + private void checkJvmLevel(StartupStatus ss) { + String specLevel = System.getProperty("java.specification.version", ""); + if (specLevel.isEmpty()) { + ss.warning(this, "Can't determine the current level of Java. " + + "VIVO requires at least Java 1.7."); + } else if (specLevel.compareTo("1.7") < 0) { + ss.warning(this, "VIVO requires at least Java 1.7 - " + + "currently running on Java " + specLevel); + } else { + ss.info(this, "Java version is " + specLevel); + } + } + /** * Check the Java temp directory. Make sure that it exists, it is a * directory, we can read it, we can write to it.