Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven将Tomcat JAR复制到webapp WEB-INF/lib目录_Java_Eclipse_Maven_Tomcat - Fatal编程技术网

Java Maven将Tomcat JAR复制到webapp WEB-INF/lib目录

Java Maven将Tomcat JAR复制到webapp WEB-INF/lib目录,java,eclipse,maven,tomcat,Java,Eclipse,Maven,Tomcat,我有一个非常简单的webapp,作为WAR文件发布,在Eclipse中开发。我正在使用m2e进行依赖关系管理。我的项目在projectfacets选项卡中启用了dynamicweb模块,以及Java。此外,在my部署程序集下,我列出了Maven依赖项,但没有包含/排除选项: 我的战争构建良好,在Eclipse中运行良好。然而,动态Web模块似乎导致我的WAR文件除了包含所有其他依赖项外,还包含许多Tomcat JAR: 通过在POM.xml中包含以下内容,我可以删除tomcat-catali

我有一个非常简单的webapp,作为WAR文件发布,在Eclipse中开发。我正在使用m2e进行依赖关系管理。我的项目在
projectfacets
选项卡中启用了
dynamicweb模块
,以及
Java
。此外,在my
部署程序集下,我列出了Maven依赖项,但没有包含/排除选项:

我的战争构建良好,在Eclipse中运行良好。然而,
动态Web模块
似乎导致我的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>

org.apache.tomcat
卡塔琳娜雄猫
7.0.30
假如

但似乎必须有一种方法告诉Maven整个Tomcat容器将在运行时提供。我不想添加~20个
提供的
条目来删除其余的条目。

查看项目的POM。在某个地方,有人在没有适当的
范围的情况下添加了它们


在Eclipse中,您可以使用POM编辑器。编辑器底部有一组选项卡。一个是“依赖层次结构”。在这里,您可以搜索“tomcat”,m2e将告诉您哪些POM包含这样的依赖项。

为什么有tomcat-xyz.jar依赖项?请显示您的pom.xml。@Stefan我不知道-这正是我试图解决的问题。我同意Stefan的观点,在您的层次结构中可能根本没有理由有Tomcat依赖项。请显示整个pom.xml,或者尝试完全删除依赖项并进行测试。你完全正确,额外的其他jar应该已经向我提供了消息。我忘记将
提供的
范围添加到用于部署的
tomcat7 maven插件
。因此,除了Tomcat罐外,所有的罐车罐都有。