首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用tomcat6的maven货运插件

使用tomcat6的maven货运插件
EN

Stack Overflow用户
提问于 2011-06-22 22:20:21
回答 1查看 2.1K关注 0票数 0

我在试着安装maven货插件。我有以下要求:

部署到tomcat的自定义server.xml

  • custom context.xml

  • log4j jar,在机器上安装tomcat如果它还没有到maven的安装生命周期阶段来部署war并重新启动container

  • make部署的war被部署的war是ROOT.war

F 215

我跟踪了以下内容:http://www.java-tutorial.ch/maven/maven-tomcat-deployment-using-cargo。这不是我想要的完整的特性集,甚至它也不能完全工作。我得到的是:

代码语言:javascript
复制
Can't load log handler "4host-manager.org.apache.juli.FileHandler"
[INFO] [talledLocalContainer] java.lang.ClassNotFoundException: 4host-manager.org.apache.juli.FileHandler

然后当mvn安装返回时,我执行ps -ef,并且没有tomcat进程。

此外,它还将war复制到ROOT.war,但是旧的根目录没有被替换,因此新的ROOT.war实际上不会被部署。

对于“安装tomcat (如果还没有安装)”的要求,这看起来应该是非常简单的,但是当我提供

代码语言:javascript
复制
 <zipUrlInstaller>
     <url>http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.zip</url>
     <extractDir>/usr/local</extractDir>
  </zipUrlInstaller>

然后运行mvn cargo:install,它会抛出以下内容:

代码语言:javascript
复制
org.codehaus.cargo.container.ContainerException: Failed to get container installation home as the container has not yet been installed. Please call install() first.

真是令人费解。它希望我先调用install,但我正在调用install。

想法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-28 04:14:08

您所遵循的链接给出了货物1.0.6的演示。最近可用的版本为1.1.1,因此我建议您使用最近的,并且在子标记中有某些更改

正如在post http://cargo.codehaus.org/Deploying+to+a+running+container中所描述的。ZipUrlInstaller的子标记中有ceratin的变化。

代码语言:javascript
复制
 <!--
        Careful: As described in the ZipUrlInstaller documentation,
        Cargo versions older than 1.1.0 accept only installDir, you therefore
        need to set installDir instead of downloadDir and extractDir.
        -->

尝试使用maven原型在post http://cargo.codehaus.org/Maven2+Archetypes之后创建cargo示例项目。我建议你使用“单一Webapp模块原型”

在设置maven项目之后,您可以安装运行mvn : install -P tomcat6x命令的tomcat 6。

pom.xml片段的“单一的webapp模块原型”,这可能是有用的。

代码语言:javascript
复制
<profiles>
    <profile>
        <id>tomcat6x</id>
        <build>
            <pluginManagement>
                <plugins>
                    <plugin>
                        <groupId>org.codehaus.cargo</groupId>
                        <artifactId>cargo-maven2-plugin</artifactId>
                        <configuration>
                        <wait>true</wait>
                            <container>
                                <containerId>tomcat6x</containerId>

                                <!-- download zip url -->
                                <zipUrlInstaller>
                                    <url>http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.zip</url>
                                    <downloadDir>${project.build.directory}/downloads</downloadDir>
                                    <extractDir>${project.build.directory}/extracts</extractDir>
                                </zipUrlInstaller>
                            </container>
                        </configuration>
                    </plugin>
                </plugins>
            </pluginManagement>
        </build>
    </profile>
</profiles>

where参数true将为您提供检查服务器是否正在运行的选项。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6447252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档