经过多次的配置Tomcat多多少少都会有问题出现,现总结以下问题:
一、配置Tomcat出现错误:
我的是解压后放在D:
正确的配置方法:
(1)jdk配置:
新建
JAVA_HOME=D:Program FilesJavajdk1.6.0
编辑path:(JAVA_HOME在用户变量path也要在用户变量中)
path=%JAVA_HOME%in;
在系统变量中
新建:
CLASSPATH=.;%JAVA_HOME%lib;%JAVA_HOME%lib*.jar;
classpath必须在系统变量中建
(2)
Tomcat配置:
CATALINA_HOME=D:apache-tomcat-6.0.18
(或者是TOMCAT_HOME=D:apache-tomcat-6.0.18)
二、Tomcat启动后一闪而过:
1.如果双击startup.bat,窗口一闪而过,可以在命令行里面启动startup.bat;
2.如果命令行里面启动startup.bat情况还是这样,就可以在bat命令后面加上pause。这样就不会一闪而过了;
3.为何startup无法启动??
首先错误如下:
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
图形界面检查JAVA_HOME=D:\Program Files\Java\jdk1.6.0; 没看出什么问题
终端检查 echo %JAVA_HOME% 显示为D:\Program Files\Java\jdk1.6.0 没什么问题(其实结果是不一样的哦)
再加上jdk、netbeans、eclipse都运行正常(这些都使用同一个jdk,因此我认为JAVA_HOME肯定没有问题)
后来发现在
tomcat目录下有一个setclasspath.bat,在终端里执行,查看 JAVA_HOME 相关内容发现,原来在JAVA_HOME=D:\Program Files\Javajdk\1.6.0; 而恰恰是这个";"导致
tomcat将java.exe的之路径组合成
D:\Program Files\Java\jdk1.6.0_03;bin\java.exe
4. 其他一些关于
tomcat启动时的奇怪问题:
a.
Tomcat无法从"开始"中启动,但可以在startup.bat中启动
JDK版本过低
b.
启动的时候,加载信息的提示界面在屏幕上停留几秒钟就消失了,同时,tomcat的应用程序也自动关闭
在server.xml的最后,/host之上,应该写上的是:content
c.
TOMCAT启动时有一些显示,但仍会自动关闭,无法启动.
可能是地址被占用,运行桌面上的"关闭TOMCAT"快捷方式,执行完毕后再启动
TOMCAT. d.
TOMCAT启动时一闪而过,无法启动.
可能是端口被占用,可找到
TOMCAT的安装目录下的SERVER.XML文件,如..EAM2003confSERVER.XML,用记事本打开此文件,查找8080,如果找到,就将8080改为8088.
e.
TOMCAT能正常启动,可见到登录界面,但登录不进系统
可能是IE的设置问题,将所有设置回复成默认设置,关闭"上网助手"或其他IE插件的"拦截弹出窗口"的功能.
5.解读startup.bat文件
@echo off //DOS在运行批处理时,会依次执行批处理中的每条命令,并且会在显示器上显示,如果你不想让它们显示,可以加一个“echo off”。当然,“echo off”也是命令,它本身也会显示,如果连这条也不显示,就在前面加个“@”。
if "%OS%" == "Windows_NT" setlocal //判断当前系统是否是window系统
rem --------------------------------------------------------------------------- //rem 是注释(下同)
rem Start script for the CATALINA Server
rem
rem $Id: startup.bat 302918 2004-05-27 18:25:11Z yoavs $
rem ---------------------------------------------------------------------------
rem Guess CATALINA_HOME if not defined
set CURRENT_DIR=%cd% //设置当前目录
if not "%CATALINA_HOME%" == "" goto gotHome //如果设置了CATALINA_HOME
环境变量 ,就直接到下面的gotHome处
set CATALINA_HOME=%CURRENT_DIR% //如果没有设置CATALINA_HOME,就设置CATALINA_HOME为当前目录(其实这里她假设你进入
tomcat的安装目录)
if exist "%CATALINA_HOME%incatalina.bat" goto okHome//判断一下catalina.bat是否找到了,找到了就直接到下面的gotHome处
cd .. //这里他是假设你开始已经进入到了
tomcat的bin目录,所以就退到上一级目录
set CATALINA_HOME=%cd%//现在再设置CATALINA_HOME为
tomcat的安装目录
cd %CURRENT_DIR% //这里是进入dos的当前目录
:gotHome
if exist "%CATALINA_HOME%incatalina.bat" goto okHome //再次判断catalina.bat是否找到了,找到了就直接到下面的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%incatalina.bat //设置要执行的文件
rem Check that target executable exists
if exist "%EXECUTABLE%" goto okExec //再次判断catalina.bat是否找到了,找到了就直接到下面的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% //执行catalina.bat,最好将这行改为:
echo "%EXECUTABLE%" start %CMD_LINE_ARGS% 以便阅读、理解本文件的作用
6、可以运行cmd D:apache-tomcat-6.0.18in>service install
tomcat
出现你的配置信息:Installing the service '
tomcat' ...
Using CATALINA_HOME: D:\apache-tomcat-6.0.18
Using CATALINA_BASE: D:\apache-tomcat-6.0.18
Using JAVA_HOME: D:\Program Files\Java\jdk1.6.0
Using JVM: D:\Program Files\Java\jdk1.6.0\jre\bin\server\jvm.dll
The service ‘
tomcat’ has been installed.
这说明没有错误,你可以继续
D:\apache-tomcat-6.0.18\bin>net start
tomcat
Apache
Tomcat tomcat 服务正在启动 ...
Apache
Tomcat tomcat 已经启动成功。
三、卸载
tomcat后还有Apache Tomato
tomcat 服务
这时后运行cmd sc delete
tomcat4或
tomcat5或
tomcat6
删除Apache
Tomcat tomcat 服务 点击打开链接