如何在java war文件中的META-INF / context.xml中的T​​omcat 8上指定“上下文路径”?

如何使用Tomcat 8上war文件中的context.xml将mywebapp-1.0.0.war部署到带有上下文路径/ mywebapp的 $ TOMCAT_HOME / webapps目录?

我从版本5开始回到Tomcat。我习惯在war文件中创建META-INF / context.xml:

  ...  

Maven使用以下名称创建war文件:mywebapp-1.0.0.war

但是当我将war文件部署到$ TOMCAT_HOME / webapps目录时,上下文路径将是http:// localhost:8080 / mywebapp-1.0.0而不是http:// localhost:8080 / mywebapp / 。

另外我看到$ TOMCAT_HOME / conf / Catalina / localhost是空的,而不是从部署的war文件中复制xml文件。

我还在$ TOMCAT_HOME / conf / server.xml中添加了deployXML =“true”

   

无法在webapp目录中放置war并同时在META-INF / context.xml文件中设置path属性。 Tomcat 8 文档 ,清楚地说明了这个属性:

只有在server.xml中静态定义Context时,才能使用此属性。 在所有其他情况下,将从用于.xml上下文文件或docBase的文件名推断出该路径。

你不能只将你的war文件重命名为mywebapp(通过Maven或其他),以便Tomcat将它部署在/ mywebapp下吗?

感谢您的研究j2gl! 我发现了如何使用全名和版本的短路径来实现两个.war文件的好方法是使用Tomcat管理器API。 例如通过Tomcat7-maven-plugin。