天天看点

Tomcat 与 JDK 版本对应

官网下载Tomcat压缩包解压后,执行启动命令,虽然显示Tomcat启动成功,但是无法访问http://localhost:8080

scxMacBook-Pro:bin scx$ ./startup.sh
Using CATALINA_BASE:   /Users/scx/software/apache-tomcat-10.1.0-M7
Using CATALINA_HOME:   /Users/scx/software/apache-tomcat-10.1.0-M7
Using CATALINA_TMPDIR: /Users/scx/software/apache-tomcat-10.1.0-M7/temp
Using JRE_HOME:        /Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
Using CLASSPATH:       /Users/scx/software/apache-tomcat-10.1.0-M7/bin/bootstrap.jar:/Users/scx/software/apache-tomcat-10.1.0-M7/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
           

网上查了半天都没查到原因,后来执行shutdown时发现报错,根据报错意思大概猜测是版本问题,又查了些资料才知道版本对应关系

scxdeMacBook-Pro:bin scx$ ./shutdown.sh
Using CATALINA_BASE:   /Users/scx/software/tomcat
Using CATALINA_HOME:   /Users/scx/software/tomcat
Using CATALINA_TMPDIR: /Users/scx/software/tomcat/temp
Using JRE_HOME:        /Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
Using CLASSPATH:       /Users/scx/software/tomcat/bin/bootstrap.jar:/Users/scx/software/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/catalina/startup/Bootstrap has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)
           

以后下载Tomcat时需要注意版本要与自己电脑上的JDK版本对应,否则会导致Tomcat启动失败!

Tomcat 与 JDK 版本对应