您可以通过创建指向您的 Web 应用程序的版本化上下文文件来实现所需的功能。例如,如果您有一个名为 myWebsite 的上下文,那么您需要创建一个名为 myWebsite.xml 的上下文文件。这将为您的应用程序设置 docBase 值。下面提供了一个示例。
File: /{tomcat.base}/conf/Catalina/localhost/myWebsite.xml
<Context reloadable="true" crossContext="true" docBase="/Users/jeremy/myapp"></Context>
然后,您可以通过将应用程序复制到其新位置(例如:/Users/jeremy/myapp-v2)来进行并行部署,然后创建一个指向该新位置的新上下文文件。新的上下文文件应该包括所有标准并行部署的版本号。
File: /{tomcat.base}/conf/Catalina/localhost/myWebsite##001.xml
<Context reloadable="true" crossContext="true" docBase="/Users/jeremy/myapp-v2"></Context>
一旦 tomcat 找到新的上下文文件,就会加载新版本的应用程序,并将新用户发送到新版本的应用程序。现有用户的会话到期后将迁移到新版本。
感谢 tomcat 用户邮件列表中所有帮助我解决此问题的人 http://tomcat.10.x6.nabble.com/Tomcat-7-0-27-on-Mac-OSX-Lion-Is-it-Possible -to-use-Tomcat-Parallel-Deployment-when-the-Context-Namee-td5000908.html#a5000920