如何找到缺少哪些maven依赖项

qiG*_*uar 4 java maven

我有一个Web项目和一个pom.xml文件.它有足够的依赖关系compile,package但不足以启动项目.在我的IDE中,它显示一切正常,但是当启动应用程序时它有错误.当我从另一个应用程序添加外部pom.xml时,我的应用程序启动.

那么有什么方法可以找出哪些依赖项缺失,以及将来如何确定使用这个或那个需要哪些依赖项?

Far*_*lah 5

您可以使用它mvn dependency:analyze来确定哪些依赖项是used and declaredused and undeclaredunused and declared.
有关更多信息,请访问:http://maven.apache.org/plugins/maven-dependency-plugin/analyze-mojo.html.

希望这可以帮助.


mak*_*mov 4

没有 Maven 命令可以完成此操作。您需要检查哪些类导致了NoClassDefFoundError,找出依赖关系(Google) - 它们被运送到哪些 JAR 中,并将它们添加到runtimepom.xml 中的范围内。

特别是在 Web 项目中,您经常针对 servlet 或 Java EE 规范 JAR(它们仅包含接口)进行编译,但您需要在运行时存在实际的实现 JAR。这些 JAR 通常并且假定在您运行的容器(如 Tomcat 或 JBoss)中可用,在这种情况下,它们将被标记为providedpom.xml 中的范围。