Java 从子pom解析maven依赖项
我是maven的新手,我有一个maven多模块项目,以父pom为基础Java 从子pom解析maven依赖项,java,maven,Java,Maven,我是maven的新手,我有一个maven多模块项目,以父pom为基础 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test.cit</groupId>
<artifactId>cit</artifactId>
<version>LATEST-SNAPSHOT</version>
<name>Integration Test Framework</name>
<packaging>pom</packaging>
<modules>
<module>common</module>
<module>core</module>
<module>login</module>
</modules>
</project>
4.0.0
com.test.cit
cit
最新快照
集成测试框架
聚甲醛
常见的
核心
登录
我已经将所有相关的外部依赖项放到了common、core和login的子pom中。然后,我将该项目转换为一个eclipse项目(mvn eclipse:eclipse),之后eclipse无法解析子pom中的依赖项,尽管M2_HOME中存在相应的JAR
然后,我将所有依赖项从子pom添加到父pom(子pom中存在的任何依赖项),然后eclipse能够解决这个问题
我对这种行为感到困惑。既然我已经将外部依赖项添加到了子pom中,为什么还要将其再次添加到父pom中
任何人都可以请您解释一下,或者我在这里做错了什么来解决问题。在父pom中,您可以选择添加两个标记:
<dependencies></dependencies>
及
在
标记中,您必须放置所有项目包含的所有依赖项,例如JUnit依赖项或Log4j
在
标记中,您应该添加项目所需的所有依赖项,但这并不意味着它们将包含在所有项目中。这只意味着您的子项目可以包含它们,也可以不包含它们。它将帮助您管理这些版本
当您将所有依赖项添加到父项目时,您的子项目之间的依赖项可能会因此而出现问题。我希望将所有依赖项都包含在子pom中,而不是包含在父pom中。整个过程在eclipse中运行良好,但在eclipse中产生了一个问题。
<dependencyManagement></dependencyManagement>