如何使用命令行安装将Tomcat 7安装为Windows服务

时间:2014-03-03 20:23:12

标签: windows service install tomcat7

我需要将Tomcat 7安装为Windows服务并手动启动服务。

参考How to install Tomcat as a Windows service,我认为我需要在命令行中指定以下内容:

tomcat7 //IS//Tomcat7 --DisplayName="Apache Tomcat 7" --Install="C:\Tomcat7\bin\tomcat7.exe

我是否还需要在命令行中指定全部或部分以下内容,如示例中所示?如果只有一些,请说明哪些。如果示例中的任何内容不正确,请指定。

--Jvm=auto
--StartMode=jvm
--StopMode=jvm 
--StartClass=org.apache.catalina.startup.Bootstrap
--StartParams=start
--StopClass=org.apache.catalina.startup.Bootstrap 
--StopParams=stop

我需要确定的是指定以下内容,因为我需要告诉Tomcat使用特定的java home而不是安装它的服务器上的环境变量JAVA_HOME设置的java home。

--JavaHome="C:\Program Files\Java\jdk1.7.0_51

原因:服务器已经有不同版本的Tomcat(5.5),它使用旧版本的JDK(1.5)。我不能在服务器上更改JAVA_HOME。我只需要确保Tomcat 7使用JDK 1.7并尝试过这一行:

C:\tomcat7\bin>tomcat7 //IS//Tomcat7 --DisplayName="Apache Tomcat 7" --Install="C:\Tomcat7\bin\tomcat7.exe" --JavaHome="C:\Program Files\Java\jdk1.7.0_51"

当我尝试启动该服务时,会显示以下错误消息:

Windows could not start the Apache Tomcat 7 on Local Computer. For
more information, review the System Event Log. If this is a
non-Microsoft service, contact the service vendor, and refer to
service-specific error code 1.

我查看了系统事件查看器,它提供了以下信息:

The Apache Tomcat 7 service terminated with service-specific error Incorrect function..

我需要弄清楚这些步骤,因为我需要向支持团队提供在生产服务器上安装此服务的信息。所以任何帮助都将不胜感激!

4 个答案:

答案 0 :(得分:1)

使用Powershell命令行中的Chocolatey

首先安装Chocolatey

PS:\> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))

安装Tomcat

PS:\> choco install tomcat

升级

PS:\> choco upgrade tomcat

答案 1 :(得分:0)

看起来像java JVM和tomcat版本不匹配。

  

实际上是tomcat7.exe包装器程序   “运行”JVM,它必须与它运行的JVM类型相匹配   32位/ 64位版本。如果您尝试使用32位启动64位JVM   tomcat7.exe,它不起作用,反之亦然。

Reference

答案 2 :(得分:0)

这是因为物理RAM不足。

检查Tomcat文档的最低系统要求,并尽可能尝试关闭不必要的程序。

答案 3 :(得分:0)

从Powershell命令行使用Chocolatey:

PS> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))

安装Tomcat:

PS> choco install tomcat

要升级:

PS> choco upgrade tomcat