如何配置 Maven Cargo 以使用嵌入式 Tomcat 6 服务器?

Posted

技术标签:

【中文标题】如何配置 Maven Cargo 以使用嵌入式 Tomcat 6 服务器?【英文标题】:How do I configure Maven Cargo to use an embedded Tomcat 6 server? 【发布时间】:2011-10-22 16:16:29 【问题描述】:

我正在使用 Maven 3.0.3。有没有办法可以使用 Maven Cargo 插件来启动嵌入式 Tomcat 服务器?现在,看来我必须先自己安装它。当我尝试将容器类型更改为“嵌入式”时出现此错误...

[ERROR] Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.1.2:run (default-cli) on project jx: Execution default-cli of goal org.codehaus.cargo:cargo-maven2-plugin:1.1.2:run failed: Cannot create configuration. There's no registered configuration for the parameters (container [id = [tomcat6x], type = [embedded]], configuration type [standalone]). Actually there are no valid types registered for this configuration. Maybe you've made a mistake spelling it? -> [Help 1]

我使用的配置是...

                            <plugins>
                                    <plugin>
                                            <groupId>org.codehaus.cargo</groupId>
                                            <artifactId>cargo-maven2-plugin</artifactId>
                                            <configuration>
                                                    <container>
                                                            <containerId>tomcat6x</containerId>
                                                            <type>embedded</type>
                                                    </container>

                                                    <configuration>
                                                            <properties>
                                                                    <cargo.servlet.port>8080</cargo.servlet.port>
                                                                    <cargo.logging>high</cargo.logging>
                                                            </properties>

感谢任何帮助。我不使用 Maven 嵌入式 Tomcat 插件的原因是它不支持多个部署工件。谢谢, - 戴夫

【问题讨论】:

已为 Tomcat 9 更新:***.com/questions/59924534/… 【参考方案1】:

来自 cargo documentation 嵌入式容器在 tomcat6 上不受支持。码头只有supported。

【讨论】:

这个答案已经过时了,现在支持嵌入式Tomcat。【参考方案2】:

也许t7mp 插件会是一个替代方案? Overview of the configuration options 展示了如何部署多个 web 应用程序以及如何配置共享库。据我所知,当前版本在 maven Central 中不可用,因此您必须从 github 下载并自行构建和部署。

运行时,它会使用指定的 tomcat 6 或 7 版本的库填充 target/tomcat 文件夹,并使用同一 jvm 中的新类加载器引导 tomcat。

【讨论】:

以上是关于如何配置 Maven Cargo 以使用嵌入式 Tomcat 6 服务器?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Maven 3 中运行嵌入式 Tomcat 9 以进行集成测试?

如何使用 Cargo maven 插件远程部署 EAR 到 JBoss 5.1.0.GA?

Cargo maven 插件 - 启动目标忽略配置,“运行”工作正常

如何使用 cargo 部署特定的子项目:开始使用 maven

如何将文件夹添加到由 maven cargo 插件启动的 Tomcat 容器的类路径中

如何为 Jetty 的 Maven Cargo 插件指定 jetty-env.xml 文件?