tomcat - 将项目 jar 部署到使用 maven cargo plugin 启动的运行容器时出现问题

标签 tomcat deployment maven integration-testing maven-cargo

我在一个 maven 项目中有一系列 Servlet 和 Servlet 过滤器,它们被打包到一个 jar 中,并且该 jar 应该包含在一系列其他“主机”Web 应用程序的/lib 目录中。这些 Servlet 并不意味着要单独运行 - 并且不保证它们自己的 war (它不是一个独立的网络应用程序)。

在我的 src/test/java 目录中,我有一些 Mock 对象松散地模仿这些“主机”应用程序。

我在集成测试阶段使用 cargo 来启动 tomcat 实例,但我很难让 tomcat 使用我在 src/test/java 中的模拟“主机”servlet。

有推荐的方法吗?我是否需要先从 src/test/java 中的源构建 war ?

此外,在启动容器之前,我需要将实际项目的 jar 移动到 WEB-INF/lib。我考虑过使用 maven assembly 插件来做到这一点?有没有办法只使用 cargo 配置选项来做到这一点?

非常感谢您的任何意见。

最佳答案

是的,您必须为此构建一个 WAR。

Cargo 部署容器理解的内容,即 WAR 或 EAR 文件,但不是 JAR 文件。

关于tomcat - 将项目 jar 部署到使用 maven cargo plugin 启动的运行容器时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4702179/

相关文章:

tomcat - Windows Server 2012 - Amazon ec2 Web 服务器无法使用公共(public) IP 从外部访问

tomcat - 错误 : - Cannot load JDBC driver class 'com.mysql.jdbc.Driver'

java - 以变​​量作为版本号的 Maven 模块

jsf - Maven和JSF webapp结构,JSF资源到底放哪里

tomcat - 独立tomcat上的全局重定向

tomcat - 部署Spring boot app jar文件嵌入tomcat

deployment - Websphere 8.5 : Root exception is org. eclipse.jst.j2ee.commonarchivecore.internal.exception.DeploymentDescriptorLoadException : WEB-INF/web. xml

php - 是否可以编译 Symfony2 assetic :dump and deploy that rather than run it on the server?

linux - 在Linux中部署C++游戏

maven - 错误 : -classpath requires class path specification