如何使用Tomcat 8上war文件中的context.xml将 mywebapp-1.0.0.war 部署到$ TOMCAT_HOME / webapps目录并使用上下文路径 /mywebapp ?
我从版本5开始回到Tomcat . 我习惯在war文件中创建META-INF / context.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/mywebapp">
...
</Context>
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”
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
deployXML="true">
3 回答
无法在 webapp 目录中放置战争并同时在META-INF / context.xml文件中设置 path 属性 . Tomcat 8 documentation,清楚地说明了这个属性:
你不能只将你的war文件重命名为mywebapp(通过Maven或其他),以便Tomcat将它部署在/ mywebapp下吗?
感谢您的研究j2gl!我发现了如何使用全名和版本的短路径来实现两个.war文件的好方法是使用Tomcat管理器API . 例如通过Tomcat7-maven-plugin .