运行maven:install会将更多的jar复制到WEB-INF / lib,而不是我期望的

时间:2012-10-12 09:04:51

标签: eclipse maven eclipse-wtp m2e

Eclipse Indigo; m2e 1.1.0; WTP的Maven集成0.15.3; Maven 3.0.4

我的web项目在同一个工作区中有一些依赖项目。所有项目都已安装。当我运行maven install时,除了查看WEB-INF / lib中的所有依赖项。

当我运行maven install plugin或maven war插件时,WEB-INF / lib将填充依赖项,但它们比我预期的要多得多,来自“依赖层次结构”或“有效POM”视图POM文件,或类路径视图中的Maven依赖项,我找不到依赖项。

运行 Maven->更新项目无效。

那么这些依赖关系来自何处或应该从哪里开始调试?

修改 以前我的项目有一个大的依赖树(100多个罐子),其中一些不需要,所以我决定删除它们。我的项目依赖于一个共同的项目,它有一些不需要的依赖项,我从POM依赖项中删除它们并为整个项目依赖树运行maven install,成功。然后我在我的项目上运行maven install,它不应该包括我从公共项目中删除的jar,但不幸的是它们在WEB-INF / lib中。

2 个答案:

答案 0 :(得分:1)

如果您想知道依赖项的来源,请运行:

mvn dependency:tree
从命令行

。这显示了如何从声明的依赖项中提取传递依赖项。 您也可以运行:

mvn dependency:analyze

查看是否可以删除任何未使用的依赖项以减少打包的JAR数量。

答案 1 :(得分:0)

问题解决了,我删除整个项目并从远程导入,运行maven-install,它工作正常。即使在我对所有依赖项目运行“maven clean install”之后,仍然不知道为什么它不能工作。