如何在不重启Tomcat的情况下更改HTML/JS/CSS?

Dar*_*don 18 tomcat tomcat7

是否可以配置Tomcat,使其在开发过程中查找我的"webapp"目录的单独位置?

我在一个目录中有我的git源代码,在另一个目录中安装了tomcat.我不想在两个地方进行更改,或者每次我对CSS或Javascript进行简单更改时手动复制文件,或重建/部署.


编辑 - 2013年2月21日

不幸的是,这些建议都没有效果,我怀疑这可能是因为我没有提供足够的信息来说明我是如何制定的.

我将Tomcat安装在我的主目录(我在Mac上)的目录中,名为"Development".

/Users/dbrogdon/Development/apache-tomcat-7.0.35
Run Code Online (Sandbox Code Playgroud)

我旁边有我的git来源.

/Users/dbrogdon/Development/myproject
Run Code Online (Sandbox Code Playgroud)

在myproject目录中,我的实际Web文件位于:

/Users/dbrogdon/Development/myproject/application/appname/src/main/webapp
Run Code Online (Sandbox Code Playgroud)

当我编译时,我将appname.war放入

/Users/dbrogdon/Development/apache-tomcat-7.0.35/webapps
Run Code Online (Sandbox Code Playgroud)

根据更新的信息,我应该在我的conf/server.xml或者我的docBase中提供什么conf/Catalina/localhost/appname.xml

cow*_*wls 2

您可以使用本地 Apache 服务器,并重写要从单独位置获取的 HTML/CSS/JS/ 文件。

有关如何重写 JS 文件的示例,请参阅此问题:HOWTO: rewrite requests for images, css and js to differentfolders for every application?

现在,您可以将 Apache 配置为转到 Tomcat 获取 tomcat URL,但在 apache 配置中执行这些重写,并且可以从完全不同的文件夹中获取 css/js/html 文件。

您也许可以使用此 Tomcat 过滤器:http://tuckey.org/urlrewrite/,尽管您仍然需要 apache Web 服务器来托管静态文件,但您可以使用 Tomcat 访问主 tomcat URL 并将重定向添加到所有静态文件的 apache 实例。这样就不必使用 Apache 配置 mod_jk 或其他东西。