TomCat啟動找不到配置的環(huán)境變量解決
錯誤描述
通過tomcat/bin/startup.bat啟動tomcat時遇到報錯
The JRE_HOME environment variable is not defined correctly This environment variable is needed to run this program
終端界面一閃而過,發(fā)現(xiàn)啟動失敗,這是由于tomcat在環(huán)境變量中檢索Java環(huán)境是出現(xiàn)錯誤
追根溯源
打開bat文件查看,其中沒有關(guān)于JRE_HOME的報錯信息,發(fā)現(xiàn)又運行了catalina.bat
set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"
既沒有關(guān)于catalina環(huán)境配置的報錯,又執(zhí)行了catalina.bat,那么我們就查看一下是不是在catalina.bat中拋出的JRE環(huán)境變量報錯
閱讀bat代碼,發(fā)現(xiàn)第一個有關(guān)Java環(huán)境的代碼塊
rem Get standard Java environment variables if exist "%CATALINA_HOME%\bin\setclasspath.bat" goto okSetclasspath echo Cannot find "%CATALINA_HOME%\bin\setclasspath.bat" echo This file is needed to run this program goto end :okSetclasspath call "%CATALINA_HOME%\bin\setclasspath.bat" %1 if errorlevel 1 goto end
這里嘗試從setclasspath.bat中獲取Java environment,正符合我們的猜想,繼續(xù)查看setclasspath.bat
閱讀bat,發(fā)現(xiàn)我們觸發(fā)的報錯代碼
:noJreHome rem Needed at least a JRE echo The JRE_HOME environment variable is not defined correctly echo This environment variable is needed to run this program goto exit
回溯調(diào)用源
:gotJreHome rem Check if we have a usable JRE if not exist "%JRE_HOME%\bin\java.exe" goto noJreHome if not exist "%JRE_HOME%\bin\javaw.exe" goto noJreHome goto okJava
rem In debug mode we need a real JDK (JAVA_HOME) if ""%1"" == ""debug"" goto needJavaHome rem Otherwise either JRE or JDK are fine if not "%JRE_HOME%" == "" goto gotJreHome if not "%JAVA_HOME%" == "" goto gotJavaHome echo Neither the JAVA_HOME nor the JRE_HOME environment variable is defined echo At least one of these environment variable is needed to run this program goto exit
通過代碼我們知道,如果我們不在"debug"模式下,就會繼續(xù)檢索JRE或JDK任意一個來支持我們在非調(diào)試模式下的運行,很明顯,我們在查找JRE_HOME時就出現(xiàn)了問題,從而引發(fā)報錯,接下來嘗試解決這個問題
問題解決
1.添加JRE_HOME環(huán)境變量
- win+R 輸入sysdm.cpl打開系統(tǒng)屬性->高級->環(huán)境變量
- 在系統(tǒng)變量中新建JRE_HOME 值為jre路徑
到這里,如果問題解決了,恭喜你,但是很多人和我一樣配置完畢后運行還是報錯,請參考方法2
2.直接在腳本中增加靜態(tài)變量
既然最終會在setclasspath.bat中查找環(huán)境變量,那么我們就直接在這里指明環(huán)境變量位置,而不必讓其從系統(tǒng)配置中逐步檢索了
rem Set JAVA_HOME or JRE_HOME if not already set, ensure any provided settings rem are valid and consistent with the selected start-up options and set up the rem endorsed directory. rem --------------------------------------------------------------------------- rem Make sure prerequisite environment variables are set set JAVA_HOME=D:\Java_8 set JRE_HOME=D:\Java_8\jre
直接在腳本開頭寫好HOME參數(shù),注意將路徑改為自己的
再次運行,成功
成功檢索到j(luò)re
到此這篇關(guān)于TomCat 啟動找不到配置的環(huán)境變量解決的文章就介紹到這了,更多相關(guān)TomCat 啟動找不到配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Tomcat運行時在IDEA控制臺輸出信息中文亂碼的解決方案
本文主要給大家介紹Tomcat運行時在IDEA控制臺輸出信息中文亂碼的解決方案,文中的解決方案介紹的非常詳細(xì),有需要的朋友可以參考閱讀下2023-08-08intellij idea 使用Tomcat部署的項目位置在哪
intellij idea 使用Tomcat部署的項目在哪里,為什么不在Tomcat的webapps目錄下面,本文通過圖文實例相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2021-01-01