Вы можете импортировать только управляемые зависимости . Это означает, что вы можете импортировать только другие POM в dependencyManagement
раздел POM вашего проекта. т.е.
...
<dependencyManagement>
<dependencies>
<dependency>
<groupId>other.pom.group.id</groupId>
<artifactId>other-pom-artifact-id</artifactId>
<version>SNAPSHOT</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
...
Затем происходит то, что все зависимости, определенные в dependencyManagement
разделе other-pom-artifact-id
, включаются в dependencyManagement
раздел вашего POM . Затем вы можете ссылаться на эти зависимости в dependency
разделе вашего POM (и всех его дочерних POM) без необходимости включать и version
т. Д.
Однако, если в вашем POM вы просто определяете нормальную зависимость, other-pom-artifact-id
тогда все dependencies
из dependency
раздела other-pom-artifact-id
включены в ваш проект транзитивно, однако зависимости, определенные в dependencyManagement
разделе other-pom-artifact-id
, не включаются вообще.
Таким образом, в основном используются два разных механизма для импорта / включения двух разных типов зависимостей (управляемые зависимости и обычные зависимости).
На веб-сайте maven есть хорошая страница, которая может объяснить это намного лучше, чем я, Управление зависимостями в Maven, а также содержит конкретную информацию об импорте зависимостей .
pom
A in является родительским дляpom
B, можете ли вы поместить B в управление зависимостями проекта A с областью действияimport
?