Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
對於使用IDE開發的程序員來講,並不是所有人都對自己用來吃飯的工具了如指掌。常在陰溝跑,哪能不翻船。為此我把自己使用Tomcat/Eclipse的一些經驗教訓整理了一下,會陸續的貼出來,也許會幫到和我遇到同樣問題的人。
先講一個Tomcat的問題。很多人興衝衝的下載了一個Tomcat,跑到bin看到一個startup.bat就去執行,結果提示Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program。好,再去下載個最新版本的JDK,Install完成之後卻還是提示Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program。搞得對Tomcat的學習熱情冷了一半。
原因是後來較新版本的JDK(例如我使用的JDK1.6)安裝完不會自動登記環境變量JAVA_HOME,JRE_HOME。像我在單位的環境,我的用戶是受限製的(PowerUser),不方便設環境變量,於是我就找到了另外一個方法。
先看Tomcat的startup.bat,它調用了catalina.bat,而catalina.bat則調用了setclasspath.bat。隻要在setclasspath.bat的開頭聲明環境變量,如我的就是:
rem ---------------------------------------------------------------------------
rem Set CLASSPATH and Java options
rem
rem $Id: setclasspath.bat 505241 2007-02-09 10:22:58Z jfclere $
rem ---------------------------------------------------------------------------
set JAVA_HOME=D:\Java\jdk1.6.0_11
set JRE_HOME=D:\Java\jre6
rem Make sure prerequisite environment variables are set
if not "%JAVA_HOME%" == "" goto gotJdkHome
if not "%JRE_HOME%" == "" goto gotJreHome
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
......
這樣在每次運行startup.bat時就注冊了JAVA_HOME,JRE_HOME。控製台窗口關閉後,這兩個變量也將消失,不會再占用內存。運行一下,最終提示“信息:Server startup in xxxxx ms”就大功告成了。
轉自:https://www.cnblogs.com/nuke/archive/2009/05/11/1454039.html
最後更新:2017-04-03 22:15:26