Maven中 import pom 用法


目錄

用法一

說明:當一個父pom中的dependencyManagement 標簽中需要導入另一個pom中的dependencyManagement的時候,必須同時使用<scope>import</scope> 和 <type>pom</type>

例子:

 <dependencyManagement>
     <dependencies>
         <dependency>
             <!-- Import dependency management from Spring Boot -->
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-dependencies</artifactId>
             <version>2.0.1.BUILD-SNAPSHOT</version>
             <type>pom</type>
             <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

 

 這個時候,該pom中dependencyManagement就會包含導入的spring-boot-dependencies中的所有dependencyManagement

這是為了解決pom類型的父工程單繼承的問題,通過導入,可以導入各種其他父工程的dependencyManagement

注意:dependencyManagement只在父工程(即pom類型的maven工程)中聲明,在子工程中定義無需聲明版本從而生效。如果在jar類型的maven工程中添加了dependencyManagement,是沒有意義的。

 

用法二

說明:當需要把一些依賴定義到一個pom工程中,但是由於maven單繼承機制,子工程又想通過依賴引入該pom工程中的所有依賴,只需要添加<type>pom</type>

例子:

<dependencies>
  <dependency>
      <groupId>org.sonatype.mavenbook</groupId> 
    <artifactId>persistence-deps</artifactId>
    <version>1.0</version>      <type>pom</type>   </dependency>
</dependencies>

 

這是為了解決子工程單繼承的問題,通過<type>pom</type>可以依賴於其他的pom父工程,從而將pom工程中的依賴都傳遞過來

type 默認是jar,依賴jar工程時可以不寫type標簽,所以如果依賴於一個jar工程,而jar工程中包含大量的依賴,也會一起傳遞過來,這也就是maven依賴傳遞的原理。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM