如何部署mywebapp-1.0.0. war到$TOMCAT_HOME/webapps目录与上下文路径 /mywebapp使用context.xml在Tomcat 8上的war文件?
从版本5开始很长时间后,我开始使用Tomcat。我习惯于在我的war文件中创建META-INF/context. xml:
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/mywebapp">
...
</Context>
Maven创建一个名为mywebapp-1.0.0. war的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中添加了部署XML="true"
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
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。