我有一个非常简单的webapp作为WAR文件发布,正在Eclipse中开发。我正在使用m2e进行依赖管理。我的项目在Project Facets
标签中启用了Dynamic Web Module
,以及Java
。另外,在我Deployment Assembly
下我列出了Maven依赖项,但没有包含/排除选项:
我的WAR构建正常,并且在Eclipse中运行良好。 然而,Dynamic Web Module
似乎导致我的WAR文件包含许多Tomcat JAR,以及我的所有其他依赖项:
我能够通过包含在我的POM.xml中删除tomcat-catalina-7.0.30.jar
(未图示):
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina</artifactId>
<version>7.0.30</version>
<scope>provided</scope>
</dependency>
但似乎必须有一种方法告诉Maven将在运行时提供整个Tomcat 容器。我不想添加~20 provided
条目来删除其余条目。
答案 0 :(得分:2)
查看项目的POM。在某个地方,有人在没有正确scope
的情况下添加了它们。
在Eclipse中,您可以使用POM编辑器。编辑器的 bottom 有一组选项卡。一个读取&#34;依赖层次结构&#34;。在这里你可以搜索&#34; tomcat&#34;而m2e会告诉你哪些POM包含这种依赖。