俗话说的好,具体问题具体分析。
异常信息
Using CATALINA_BASE: "D:\apache-tomcat-8.0.26"
Using CATALINA_HOME: "D:\apache-tomcat-8.0.26"
Using CATALINA_TMPDIR: "D:\apache-tomcat-8.0.26\temp"
Using JRE_HOME: "C:\Program Files\Java\jdk-14.0.2"
Using CLASSPATH: "D:\apache-tomcat-8.0.26\bin\bootstrap.jar;D:\apache-tomc
at-8.0.26\bin\tomcat-juli.jar"
"C:\Program Files\Java\jdk-14.0.2\bin\java.exe"
-Djava.endorsed.dirs=D:\apache-tomcat-8.0.26\endorsed is not supported. Endorsed
standards and standalone APIs
in modular form will be supported via the concept of upgradeable modules.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
问题分析
我们启动startup.bat
文件时,在这个批处理内部会调用catalina.bat
文件,并使用传入start
参数。所以我们可以直接查看catalina.bat
文件,分析之后,直接定位到最终执行语句。下图最后语句即最终执行语句。
在结合上面的报错信息-Djava.endorsed.dirs=D:\apache-tomcat-8.0.26\endorsed is not supported
可知,我们的这个参数导致了错误发生(关于-Djava.endores.dirs
可以参考这篇文章https://blog.csdn.net/evilcry2012/article/details/46634619)。而我们并没有D:\apache-tomcat-8.0.26\endorsed
目录,所以直接删去这个参数即可。
解决方法
打开catalina.bat
文件,跳到文件最后,如下图一样,将-Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%"
删去即可。