前言: 

      这次没有下载Tomcat的windows安装版,因为之前安装上Tomcat的安装版后每次开机都自己启动,觉得它太占我速度了,于是趁着这次重装系统,下载的时候就不下载安装版,下载了个zip,直接解压了就用了,多方便。只是呢,如果想结合着MyEclipse用或者能直接用,需要先启动一下Windows的“服务”。

        先是上网找了资料,资料好多重复,都是copy来copy去,这里先综合一下再说一下自己是用了哪种方法。

 

资料1:(由于复制次数好多,不知谁是原创,这里就不粘原地址了,如果作者见到此文,可以留一下名,我马上做更改)

1. 首先检查系统是不是之前有安装过之前的版本的tomcat,如果有的话,请将其删除,删除的办法是,到windows的控制面板--->计算机管理--->服务 

在服务列表里查看有没有Apache 或tomcat相关的服务, 

如果有的话,请在上面点鼠标右键--->属性,记下此服务的名称,假如为Tomcat6 

 

此时进入windows的命令行,开始菜单--->运行--->cmd 

 

在命令行里输入 

sc delete Tomcat6 

此时就能删除。上面一行命令行的Tomcat6就是系统服务里的属性名称 

 

2. 注册新服务 

在命令行里进入到下载的免安装版的tomcat目录下的bin目录 

在此bin目录下运行 

service.bat install 

此时就能把免安装版的tomcat注册为系统服务, 

你再到windows的控制面板--->计算机管理--->服务,在服务列表里就能看到你刚新加的服务 

 

 

其实上面说了这么多,原理很简单,下面把这个基本原理讲一下, 

Tomcat/bin目录下自带了一个service.bat文件,我们执行的就是这个bat文件, 

打开service.bat文件,你会发现以下代码: 

set EXECUTABLE=%CATALINA_HOME%\bin\tomcat5.exe 

rem Set default Service name 

set SERVICE_NAME=Tomcat5 

set PR_DISPLAYNAME=Apache Tomcat 

 

if "%1" == "" goto displayUsage 

if "%2" == "" goto setServiceName 

set SERVICE_NAME=%2 

set PR_DISPLAYNAME=Apache Tomcat %2 

:setServiceName 

if %1 == install goto doInstall 

if %1 == remove goto doRemove 

if %1 == uninstall goto doRemove 

echo Unknown parameter "%1" 

:displayUsage 

echo. 

echo Usage: service.bat install/remove [service_name] 

goto end 

 

:doRemove 

rem Remove the service 

"%EXECUTABLE%" //DS//%SERVICE_NAME% 

echo The service '%SERVICE_NAME%' has been removed 

goto end 

 

:doInstall 

rem Install the service 

echo Installing the service '%SERVICE_NAME%' ... 

echo Using CATALINA_HOME:    %CATALINA_HOME% 

echo Using CATALINA_BASE:    %CATALINA_BASE% 

echo Using JAVA_HOME:        %JAVA_HOME% 

1.重要代码1: 

set SERVICE_NAME=Tomcat5 

set PR_DISPLAYNAME=Apache Tomcat 

如果把tomcat设成服务成功后,就要会系统服务里面看到,服务名就是在这里设的 

你如果改一下服务名的话,可以把上面的SERVICE_NAME,PR_DISPLAYNAME的值换掉。 

2.重要代码2: 

:doRemove和:doInstall这段代码就相当于这个bat文件有两个方法,一个叫doRemove,一个doInstall,看名字很好理解,doInstall就表示安装服务,doRemove表示删除服务 

3.重要代码3: 

if %1 == install goto doInstall 

if %1 == remove goto doRemove 

if %1 == uninstall goto doRemove 

 

但是我有在cmd命令行里却用的是: 

service.bat install 

是如何映射的呢? 

主要是通过如下代码来实现通过上面可以看到,%1就表示我们在service.bat install输入的第一个参数就是install,也就是%1=install,发现if %1 == install goto doInstall 

于是就执行doInstall方法,安装服务到系统, 

同样删除服务,一个最简单的方法就是: 

service.bat remove 

或 

service.bat uninstall 

OK.一切就这么简单 

 

资料2:(由于复制次数好多,不知谁是原创,这里就不粘原地址了,如果作者见到此文,可以留一下名,我马上做更改)

   承元OA基于J2ee技术开发,可以运行在Tomcat、weblogic、websphere等J2ee应用服务器上,对于一般访问量不是很高的客户我们推荐使用Tomcat(开源免费),一般情况下Tomcat服务需要手动运行批命令启动服务。在windows操作系统下如果需要将Tomcat变成自动启动的服务,只需按以下步骤操作即可:

1、在环境变量中设置JAVA_HOME

(假设我们缺省的JDK目录为d:\j2sdk1.4.2_04)

    A、进入windows桌面,右键选择“我的电脑”-->“属性”

    B、选择“高级”页签,点开“环境变量”

    C、在“系统变量”下点击新建弹出“新建系统变量”,变量名输入“JAVA_HOME”,变量值输入“d:\j2sdk1.4.2_04”后点击确定。

2、将Tomcat设置成服务

(假设我们缺省的Tomcat目录为d:\Tomcat_oa)

    A、点击开始-->运行,输入cmd进入dos控制台

    B、执行以下dos命令(输入命令后按回车键执行)

        d:

        cd Tomcat_oa\bin

        service install 服务名(可选)

    此时Tomcat服务已经成功安装。

3、进入系统服务将服务启动,并将服务设置成自动启动

4、服务移除

    基本操作同2,最后执行service remove 服务名(可选)

 

基于服务模式的参数调整

    基于服务模式修改tomcat\bin目录下的catalina.bat文件,调整参数(如:内存)是不起作用的,我们可以采用以下方式(以tomcat5为例):

1、运行cmd,从控制台进入tomcat的bin目录

2、运行tomcat5w //MS//服务名,windows的右下角出现托盘图标

   (服务名是具体的tomcat服务)

3、进入调整参数,保存

4、重新启动tomcat服务

 

我实操成功的方法:

看了上述资料,启动服务的方法很简单:

1. 先运行cmd,

2. 将路径调到(自己的安装路径) D:\Tomcat\bin\

3.输入命令:service.bat  install     当是卸载的时候  service.bat   remove 

4.此时,可以发现,服务己存在“控制面板”->“管理工具”->"服务”,名字默认是 Apache Tomcat 7

5. 哟,就是这么简单,已经成功啦。

另外,说一下,这里的服务,

如果你是需要长期 开着Tomcat,用来做服务器,将服务调成“自动”模式就可以了。

如果你是需要结合着MyEclipse使用,那么,请调为“手动”,因为如果在MyEclipse启动前这个服务就己经启动了,你的端口那些就会己经被这个进程使用了,你想调用的那个进程就使用不了这个端口。