JAVA_HOME 配置問題導致的閃退
解決方案:
配置jdk時以名字為JAVA_HOME的環(huán)境變量
如果你在不是JAVA_HOME 而是 其他的 如:javahome ,隨后你的classpath,path都跟著寫javahome , 運行java ,javac命令都不會報錯,但當你運行tomcat目錄下的startup.bat時,就會閃退,這里主要都是因為在配置jdk時命名不規(guī)范。
修改startup.bat,使其不依賴JAVA_HOM 和 CATALINA_HOME變量的方法:
沒有在startup.bat目錄下運行startup.bat導致的報錯
這里它運行在C盤,所以這里會報錯; 這里可以通過配置環(huán)境變量解決;
但也可以不配,因為只需要在 startup.bat 的目錄下運行即可
2. 查看 startup.bat文件
文件解釋:
setlocal 是啟動批處理文件中環(huán)境變量的本地化,相當于設(shè)置臨時環(huán)境變量; 此命令有效到出現(xiàn)endlocal命令或到達批處理文件結(jié)尾為止
rem 代表注釋,看第一行注釋,如果CATALINA_HOME未定義,就猜!
文件意思大概為三點:
判斷CATALINA_HOME是否為空,為空則把當前目錄設(shè)為CATALINA_HOME的值;
再判斷 catalina.bat 是否存在,不存在則回到上一級目錄,再把當前目錄設(shè)為CATALINA_HOME的值;
再判斷環(huán)境變量下的 catalina.bat 是否存在,存在則調(diào)用bin目錄下的 “catalina.bat start” 命令
所以,tomcat啟動的時候是會自己設(shè)置臨時環(huán)境變量的,不必自己去配置
轉(zhuǎn)載來源鏈接:https://blog.csdn.net/weixin_43054397/article/details/91391122