Apache Tomcat 10.0 静默安装

Apache Tomcat 10.0 Silent Installation

有人知道如何在命令行上静默安装 Apache Tomcat 10 吗?

我已经尝试过 /S,但它不起作用。似乎什么都没有 运行 而且我没有收到任何错误,它只是直接转到另一个命令提示符。

没有任何参数,安装程序会正常运行。

除了 windows 服务之外,我希望将所有内容都设置为自动而不是手动。

使用 Windows 安装程序进行安装

Tomcat 的 Windows 安装程序是一个 NSIS installer, therefore it supports the standard /S 命令开关。

所有其他标准 NSIS 选项也有效,因此如果您想将它安装在另一个文件夹中,只需在 cmd 提示符下执行:

tomcat-<version>.exe /S /D=D:\installation path\with spaces

唯一的非标准命令行选项是:

  • /? 打印一条很好的用法消息,
  • /C=config.ini,允许在 *.ini 文件中设置其他变量。您可以设置的完整变量列表可以在 the source script.
  • 中找到

从 zip 存档安装

Tomcat 安装总结为:

  • 解压目录中的文件,
  • 正在安装服务。

因此您可以下载 "64 位 Windows zip" 并解压缩。

bin文件夹中的Tomcat10.exe可执行文件是用于安装服务的可执行文件,它实际上是prunsrv. You can find the list of command line parameters in its documentation.

的副本

与其直接调用prunsrv,不如在同一文件夹中使用service.bat脚本更容易:

set "SERVICE_STARTUP_MODE=auto"
service.bat install

没有"silent"开关,但是所有的输出都是脚本自己完成的,可以注释掉。

编辑: 虽然 service.bat 脚本只有几个参数可用:

service.bat install/remove [service_name [--rename]] [--user username]

部分参数可以通过环境变量提供:

  • 标准CATALINA_HOMECATALINA_BASEJAVA_HOMEJRE_HOME
  • 过时的JAVA_ENDORSED_DIRS设置java.endorsed.dirs系统属性,
  • SERVICE_STARTUP_MODEmanual(默认)、delayedauto
  • 之间选择服务的启动模式
  • JvmMs 以 MiB 为单位设置初始内存池大小(默认 128),
  • JvmMx 以 MiB 为单位设置最大内存池大小(默认为 256)。