【发布时间】:2012-07-09 11:19:38
【问题描述】:
如果我在 Tomcat 中两次部署相同的 Grails 应用程序(即 myApplication_first.war、myApplication_second.war),Tomcat 无法部署 WAR 文件,可重现。 它抱怨类 XYZ 已经存在于 TEMP 文件夹中(这是真的,由于以前的部署)。 因此,更改全局 Tomcat TEMP 文件夹没有任何意义,因为两个项目无论如何都会再次使用同一个文件夹。
我通常知道如何部署应用程序两次,但不是在 Grails 上下文中,因为它已经自己管理了很多东西。
有没有办法实现这个计划?
我们使用 Grails 1.3.7 版。
我搜索了很多可能的解决方案,但没有一个适合我的需求。
- 在多个 Tomcat 实例上部署
- 仅部署一个应用程序并使用一些唯一标识符来识别强制/客户端以提供单独的数据源和内容。 (见deploy the same application multiple times on tomcat)
- 用另一个应用服务器替换 Tomcat
我想到但对我来说仍然有点奇怪的一种方法是,在部署期间动态更改所有类的包(使用 ANT 或类似的东西)。这样它们就不会在Tomcat TEMP 文件夹中发生碰撞。 这可能是一个潜在的解决方案吗? 是否有可能以一种优雅的方式实现?
亲切的问候, 克里斯托弗
【问题讨论】:
标签: tomcat grails deployment war