xain Asked: 2010-03-10 05:04:59 +0800 CST2010-03-10 05:04:59 +0800 CST 2010-03-10 05:04:59 +0800 CST 在 tomcat 部署的战争上替换单个文件 772 我想知道如何配置 tomcat 6 以便能够从战争中替换文件 - 例如图像或 jsp - 所以我不需要重新启动服务器来保持更新。我假设我必须将它部署为一个目录 - 而不仅仅是将 war 文件复制到 webapp ? 谢谢。 tomcat application update 3 个回答 Voted Best Answer DaveG 2010-04-29T13:54:17+08:002010-04-29T13:54:17+08:00 如果您有权访问服务器,则可以将 WAR 分解到一个单独的目录(使用jar -xf application.war),然后将 web-app 添加到 Tomcat 实例TOMCAT_ROOT/conf/Catalina/localhost目录。 例如 - 如果您的应用程序名为“my-app”,您将创建一个TOMCAT_ROOT/conf/Catalina/localhost/my-app.xml包含应用程序详细信息的文件。对于一个非常简单的应用程序,这可能类似于: <Context docBase="/path/to/exploded/application/directory"/> 您可能还会在此处进行更复杂的配置(例如数据库连接参数等)。 如果您想在更改单个对象(JSP、图像等)后重新部署应用程序,您可以使用管理器应用程序重新部署,而无需重新启动整个 Tomcat 环境。 Ali Mezgani 2010-03-10T05:13:49+08:002010-03-10T05:13:49+08:00 您可以通过从 webpps 目录中删除 *.war 来部署应用程序。 $ rm -fr /var/lib/tomcat5/webapps/myapp.war 您也可以这样做,如果您连接到 tomcat jmx manager http://server/manager/html,那么选择您需要删除的应用程序并单击部署。 alex 2010-03-10T14:36:59+08:002010-03-10T14:36:59+08:00 是的,部署一个目录。您还可以推送一个新的 .war 文件,Tomcat 将做正确的事情,而无需重新启动 Tomcat。 IIRC,您可以修改爆炸战争文件的文件,它会起作用。但这会导致问题(例如,战争将在重新启动时重新爆发并覆盖)。
如果您有权访问服务器,则可以将 WAR 分解到一个单独的目录(使用
jar -xf application.war
),然后将 web-app 添加到 Tomcat 实例TOMCAT_ROOT/conf/Catalina/localhost
目录。例如 - 如果您的应用程序名为“my-app”,您将创建一个
TOMCAT_ROOT/conf/Catalina/localhost/my-app.xml
包含应用程序详细信息的文件。对于一个非常简单的应用程序,这可能类似于:您可能还会在此处进行更复杂的配置(例如数据库连接参数等)。
如果您想在更改单个对象(JSP、图像等)后重新部署应用程序,您可以使用管理器应用程序重新部署,而无需重新启动整个 Tomcat 环境。
您可以通过从 webpps 目录中删除 *.war 来部署应用程序。
您也可以这样做,如果您连接到 tomcat jmx manager http://server/manager/html,那么选择您需要删除的应用程序并单击部署。
是的,部署一个目录。您还可以推送一个新的 .war 文件,Tomcat 将做正确的事情,而无需重新启动 Tomcat。
IIRC,您可以修改爆炸战争文件的文件,它会起作用。但这会导致问题(例如,战争将在重新启动时重新爆发并覆盖)。