1.首先,在cmd下,切换到startup.bat所在目录,然后命令行执行startup.bat,dos界面会给出错误提示
2.查看错误提示
3.根据错误提示,进行debug
4.例如,下面是我解决问题的思路:
a.我的报错信息为:
The JAVA_HOME environment variable is not defined correctly This environment variable is needed to run this program(系统环境变量配置问题)
The CATALINA_HOME environment variable is not defined correctly This environment variable is needed to run this program
b.找出为何会报这样的错误(我百度过,但是百度到的问题并不像是我所遇到的问题,虽然报错信息是一样的,但是出错的细节也许并不一定和你自己的完全一致,这就是为何无脑用百度的答案无法解决自己的问题的原因)
c.查看startup.bat文件内容(通过百度,尝试学习bat批处理命令是什么意思,逐渐理解startup.bat文件代码的意思)
@echo off rem Licensed to the Apache Software Foundation (ASF) under one or more rem contributor license agreements. See the NOTICE file distributed with rem this work for additional information regarding copyright ownership. rem The ASF licenses this file to You under the Apache License, Version 2.0 rem (the "License"); you may not use this file except in compliance with rem the License. You may obtain a copy of the License at rem rem http://www.apache.org/licenses/LICENSE-2.0 rem rem Unless required by applicable law or agreed to in writing, software rem distributed under the License is distributed on an "AS IS" BASIS, rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. rem See the License for the specific language governing permissions and rem limitations under the License. rem --------------------------------------------------------------------------- rem Start script for the CATALINA Server rem --------------------------------------------------------------------------- setlocal rem Guess CATALINA_HOME if not defined set "CURRENT_DIR=%cd%" if not "%CATALINA_HOME%" == "" goto gotHome set "CATALINA_HOME=%CURRENT_DIR%" if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome cd .. set "CATALINA_HOME=%cd%" cd "%CURRENT_DIR%" :gotHome rem 查看CATALINA_HOME变量 echo %CATALINA_HOME% rem 查看当前目录 echo %CURRENT_DIR% if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome echo The CATALINA_HOME environment variable is not defined correctly echo This environment variable is needed to run this program goto end :okHome set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat" rem Check that target executable exists if exist "%EXECUTABLE%" goto okExec echo Cannot find "%EXECUTABLE%" echo This file is needed to run this program goto end :okExec rem Get remaining unshifted command line arguments and save them in the set CMD_LINE_ARGS= :setArgs if ""%1""=="""" goto doneSetArgs set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 shift goto setArgs :doneSetArgs call "%EXECUTABLE%" start %CMD_LINE_ARGS% :end
通过打印变量,可以看到自己环境中的CATALINA_HOME
rem 查看CATALINA_HOME变量 echo %CATALINA_HOME% rem 查看当前目录 echo %CURRENT_DIR%
如上图所示,现在出错原因很明了了。我很早以前在环境变量中配过CATALINA_HOME,后来忘掉了。重新配置一下即可。