Cargo maven 插件 - 启动目标忽略配置,“运行”工作正常
Posted
技术标签:
【中文标题】Cargo maven 插件 - 启动目标忽略配置,“运行”工作正常【英文标题】:Cargo maven plugin - start goal ignores configuration, "run" works fine 【发布时间】:2012-02-23 04:30:54 【问题描述】:我想让 cargo maven 插件启动一个 Tomcat7,所以我把它放到我的 pom 中:
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.2.0</version>
<!-- minimal configuration to let adb run (mvn package org.codehaus.cargo:cargo-maven2-plugin:run) in a local tomcat -->
<configuration>
<containerId>tomcat7x</containerId>
<containerUrl>http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.16/bin/apache-tomcat-7.0.16.zip
</containerUrl>
<configuration>
<properties>
<cargo.servlet.port>1718</cargo.servlet.port>
</properties>
</configuration>
</configuration>
</plugin>
问题是如果我运行:
mvn package org.codehaus.cargo:cargo-maven2-plugin:run
一切正常,但如果我运行
mvn package org.codehaus.cargo:cargo-maven2-plugin:start
在 pom 中设置的配置被忽略:“未定义容器,使用默认 [jetty6x,嵌入式] 容器”
您可以轻松地复制它。只需创建一个战争专家应用程序:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webappp
然后将上面的代码添加到 pom 并运行这两个命令。
那么如何为目标start
正确设置ContainerId
和Url
-- 我错过了什么吗?!
【问题讨论】:
查看 java-forum.org 上的评论。 这两个命令在你的问题中是一样的... 【参考方案1】:所以我联系了货运支持。上面的配置确实只适用于运行目标,但也有一个配置同时适用于两者(货物文档有点误导):
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.2.0</version>
<!-- minimal configuration to let adb run (mvn package org.codehaus.cargo:cargo-maven2-plugin:run) in a local tomcat -->
<configuration>
<container>
<containerId>tomcat7x</containerId>
<zipUrlInstaller>
<url>http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.16/bin/apache-tomcat-7.0.16.zip</url>
</zipUrlInstaller>
</container>
<configuration>
<properties>
<cargo.servlet.port>1718</cargo.servlet.port>
</properties>
</configuration>
</configuration>
</plugin>
注意额外的容器和 zipUrlInstaller 标记,而不是 containerUrl。
【讨论】:
以上是关于Cargo maven 插件 - 启动目标忽略配置,“运行”工作正常的主要内容,如果未能解决你的问题,请参考以下文章
如何配置 Maven Cargo 以使用嵌入式 Tomcat 6 服务器?
如何为 Jetty 的 Maven Cargo 插件指定 jetty-env.xml 文件?