手工把Tomcat安装为Windows服务,并且设置自定义参数

转自:http://sheng.iteye.com/blog/387647

近日,需要把一个Tomcat安装为Windows服务,安装很简单,只要执行一下 bin/service.bat install 即可,但是Tomcat上布署的应用启动时就需要连接MySQL数据库,所以Tomcat服务依赖MySQL服务,如何能让手工安装的Tomcat服务设置一个依赖服务。查了一些资料,发现Tomcat5.exe 和 Tomcat5w.exe 有一些参数可以设置服务参数。

Tomcat5.exe 服务程序
命令行选项
每一个命令行指令都形如//XX//ServiceName
可用的命令行选项如下:
The ServiceName is the name of the executable without exe sufix, meaning Tomcat5

  • //TS// 控制台应用程序模式运行服务,这是缺省的操作。在没有提供任何选项开关的时候,它被调用。服务名是执行文件没有exe后缀的部分,如Tomat5。
  • //RS// Run Service的缩写,运行服务,在服务管理器(Sevices.msc)中启动服务的时候被调用。
  • //SS// Stop Service的缩写,停止服务,在服务管理器中停止服务时被调用。
  • //US// Update Service的缩写,更新服务参数。
  • //IS// Install service 的缩写,安装服务 。
  • //DS// Delete service的缩写,删除服务,如果服务正在运行,首先删除服务。

命令行参数
每一个命令行参数以“–”开头。如果命令行以“++”为前缀,则它的值附加到存在的选项上。如果存在和命令行参数有同样的名字,但是以PR_开头的环境变量,它将被优先使用。例如:
set PR_CLASSPATH=xx.jar
等同于
–Classpath=xx.jar
作为命令行参数。
参数名 缺省值 描述
–Description  服务名描述 (最多1024个字符)
–DisplayName ServiceName 服务显示名称
–Install procrun.exe //RS//ServiceName 安装服务
–Startup  manual Service 服务启动模式,可以是自动或者手动,值分别为:auto和manual
–DependsOn  列举此服务依赖的所有服务. 被依赖的服务用#或者;分隔。
–Environment  列决提供给服务使用的环境变量,形如key=value。多个环境变量之间用#或者;分隔。
–User  运行服务使用的用户账号。 只有在运行于没有“作为服务登录”权限下的账户中使用StartMode java 或者作为服务的exe可运行程序选项的情况下才被使用。
–Password  –User参数中用户的密码
–JavaHome J***A_HOME 定义了J***A_HOME环境变量时,设置一个不同的J***A_HOME环境变量
–Jvm auto 用auto或指定jvm.dll的全路径。这里可以使用环境变量表达式。
–JvmOptions -Xrs  列举形如-D 或 -X 的开关传递给JVM虚拟机。多个选项开关之间用#或者;分隔。
–Classpath  设置Java的ClassPath环境变量。
–JvmMs  设置初始使用的内存池容量,单位为MB。
–JvmMx  设置最大使用的内存池容量,单位为MB。
–JvmSs  线程堆栈容量,单位为KB
–StartImage  要被运行的可执行文件
–StartPath  开始运行可执行文件的工作路径
–StartClass  启动时使用的类
–StartParams  列决要传递给StartImage 或 StartClass的参数。多个参数之间用#或者;分隔。
–StartMethod Main 启动服务调用的方法,如果不是main,这里写上方法名
–StartMode executable 可以是jvm、java或exe 之一
–StopImage  停止服务调用的可执行文件
–StopPath  停止服务执行的文件的工作路径
–StopClass  停止服务调用的类
–StopParams  列决要传递给 StopImage 或 StopClass 的参数。多个参数之间用#或者;分隔。
–StopMethod Main 停止服务调用的方法,如果不是main,这里写上方法名
–StopMode executable 可以是jvm、java或exe 之一
–StopTimeout No Timeout 定义一个服务顺利退出的延时,单位为秒。
–LogPath 定义日志路径
–LogPrefix jakarta_service 定义日志文件名前缀
–LogLevel INFO 定义日志等级,可选值:error, info, warn或debug
–StdOutput  重定向stdout文件名
–StdError  重定向Stderr文件

打开bin/service.bat文件,在

一句后面加上 –DependsOn mysql5.1.32
再执行bin/service.bat,即可安装Tomcat服务,并且依赖MySQL5.1.32