首页 文章

将版本化的WAR文件部署到tomcat

提问于
浏览
6

我想知道将maven打包的WAR文件部署到tomcat的最佳做法是什么 . 使用maven发布插件我得到了一个版本化的war文件,例如:myservice-1.0.0.war

我想将它部署到tomcat,以便我可以访问它,如下所示:http://localhost:8080/myservice

默认情况下,tomcat将war文件作为CATALINA_HOME / webapps下名为myservice-1.0.0的目录进行爆炸 . 但出于上述原因,我想将战争爆炸为名为myservice的目录 .

我知道我可以简单地重命名myservice-1.0.0.war >> myservice.war,然后在Tomcat中部署它 .

我想知道其他人在做什么?

4 回答

  • 2

    我会通过将myservice作为artifactId和最终名称并使用maven cargo plugin来部署到tomcat来实现 . http://cargo.codehaus.org/Maven2+Plugin+Tips

  • 0

    您可以使用以下内容打包文件/META-INF/context.xml:

    <?xml version="1.0"?>
    <!DOCTYPE Context>
    <Context path="myapp">
    </Context>
    

    请参阅http://tomcat.apache.org/tomcat-5.5-doc/config/context.html的文档

  • 3

    我遇到了同样的问题 . 对我有用的是将此属性元素插入货物可部署配置中:

    <deployable>
                            <groupId>org.something</groupId>
                            <artifactId>something-idm-esb</artifactId>
                            <properties>
                                <context>something-idm-esb</context>
                            </properties>
                            <type>war</type>
                        </deployable>
    

    如果没有此属性元素,应用程序将部署到localhost:8080 / something-idm-esb-0.9.14.2,这不是应用程序在运行时需要的 . 使用属性部分,应用程序部署到localhost:8080 / something-idm-esb /

  • 1

    您可以执行以下操作,而不是重命名war文件:

    只需在tomcat-dir / conf / server.xml中的 <Host>..<\Host> 标记之间添加以下内容即可 .

    for:myservice-1.0.0.war文件

    <Context path="/myservice" docBase="/myservice-1.0.0" debug="0" reloadable="true"></Context>
    

    Reference

相关问题