【问题标题】:Start a web container then deploy a war with cargo maven2 plugin启动一个 web 容器,然后使用 cargo maven2 插件部署一个战争
【发布时间】:2011-05-13 21:35:27
【问题描述】:

我尝试使用 cargo-maven2-plugin 来自动化我的 WAR 模块部署以进行测试。

我想知道如何启动 tomcat 服务器(预先安装在我的机器中)并将我的战争自动部署到启动的服务器上?

Cargo 项目的文档提到 cargo:start 目标可以可选地部署可部署:

http://cargo.codehaus.org/Maven2+plugin#Maven2plugin-gettingstarted

cargo:start 启动一个容器。该任务可以选择安装和配置容器;它还可以选择性地向其部署可部署项(WAR、EAR 等)。

但是,我不知道如何启用此选项以使其在运行 cargo:start 时部署可部署。

这是我当前的 pom 配置:

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.cargo</groupId>
            <artifactId>cargo-maven2-plugin</artifactId>
            <version>1.0</version>
            <configuration>
                <wait>true</wait>
                <container>
                    <containerId>tomcat6x</containerId>
                    <home>${tomcat.home}</home>
                </container>
                <configuration>
                    <type>standalone</type>
                    <home>target/tomcat6x</home>
                </configuration>
                <deployer>
                    <deployables>
                        <deployable>
                            <groupId>${project.groupId}</groupId>
                            <artifactId>my-war</artifactId>
                            <type>war</type>
                        </deployable>
                    </deployables>
                </deployer>
            </configuration>
        </plugin>
    </plugins>
</build>
<dependencies>
    <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>my-war</artifactId>
        <version>${project.version}</version>
        <type>war</type>
    </dependency>
</dependencies>

当我运行“mvn cargo:start”时,tomcat 服务器将被启动,但是 my-war 可部署文件不会被部署。而且我必须从另一个 shell 运行“mvn cargo:deploy”来部署这场战争。

【问题讨论】:

    标签: java web-applications maven-2 cargo


    【解决方案1】:

    好的——这里发生了一些事情:

    1) 您提到 Tomcat 服务器已预先安装在机器上,但您在目标目录中指定了该目录。这不是一个好主意,因为它会在mvn clean 之后消失。

    2) 对于预安装的 Tomcat,您没有在部署器配置中将 type 设置为 existing

    3) 你的上下文定义在哪里?您有上下文片段文件还是在 WAR 的 WEB-INF 目录中使用 tomcat.xml 文件?

    最重要的是配置错误的组合阻碍了您。发布有关 XML 上下文定义的更新 Maven 配置和添加详细信息,我可以进一步帮助您。

    【讨论】:

      猜你喜欢
      • 2015-12-30
      • 2010-11-26
      • 2012-05-12
      • 2014-08-20
      • 2017-04-25
      • 1970-01-01
      • 2010-11-14
      • 1970-01-01
      • 2015-06-14
      相关资源
      最近更新 更多