我的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中。
答案 0 :(得分:1)
如果您想知道依赖项的来源,请运行:
mvn dependency:tree
从命令行。这显示了如何从声明的依赖项中提取传递依赖项。 您也可以运行:
mvn dependency:analyze
查看是否可以删除任何未使用的依赖项以减少打包的JAR数量。
答案 1 :(得分:0)
问题解决了,我删除整个项目并从远程导入,运行maven-install,它工作正常。即使在我对所有依赖项目运行“maven clean install”之后,仍然不知道为什么它不能工作。