【问题标题】:Prevent tomcat from starting application on deploy防止tomcat在部署时启动应用程序
【发布时间】:2023-03-27 06:01:01
【问题描述】:

有没有办法告诉Tomcat不要自动启动我要部署的应用程序?我想手动操作。

【问题讨论】:

    标签: java tomcat jakarta-ee


    【解决方案1】:

    供将来参考,因为至少 Tomcat 7.0 每个容器都有一个未记录的属性startChildren(参见source code),它决定是否应该自动启动子级。

    设置:

    <Host startChildren="false" />
    

    将阻止自动部署的应用程序自动启动。

    备注:这仅适用于自动部署的应用程序(即在 StandardHost 已经启动后添加的应用程序)。 server.xml 中配置的应用程序将在StandardHost 启动时自动启动。

    【讨论】:

      【解决方案2】:

      我理解您的问题是在启动 Tomcat 时没有部署您的应用程序 - 如果是这样,

      server.xml 中的&lt;Host&gt;deployOnStartup 属性设置为false 应该这样做。

      但这会影响该服务器上的所有 Web 应用程序。默认为真

      【讨论】:

      • 不完全是。我有 tomcat 运行,然后部署应用程序,我不希望该应用程序在完成部署后启动。
      【解决方案3】:

      CATALINA_HOME/conf/server.xml:

      <Host appBase="webapps" autoDeploy="false" name="localhost" unpackWARs="true" 
          xmlNamespaceAware="false" xmlValidation="false">
      

      注意autoDeploy="false"

      【讨论】:

      • 这只会禁用自动部署新应用程序和自动重新部署现有应用程序。但已部署的应用程序仍会自动启动。
      猜你喜欢
      • 2012-12-10
      • 1970-01-01
      • 2015-12-25
      • 1970-01-01
      • 1970-01-01
      • 2013-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多