Maven依賴作用域

依賴關係範圍用於限制依賴關係的可傳遞性,並且還影響用於各種構建任務的類路徑。

六種可用作用域:

1、compile

默認作用域;在項目的所有類路徑中均可用,而且這些依賴項會傳播到依賴整個項目。

2、provided

和compile很相似,但表示您希望JDK或容器在運行時提供依賴關係,例如,在爲Java Enterprise Edition構建Web應用程序時,應將對Servlet API和相關Java EE API的依賴關係設置爲povided範圍,因爲Web容器也提供了這些類;

該作用域僅在編譯和測試類路徑上可用,並且不可傳遞。

3、runtime

運行期可用。它作用在運行時和測試類路徑中,但不在編譯類路徑中。

4、test

僅在測試路徑對編譯和執行階段可用。此範圍不是可傳遞的。

5、system

和provided很相似,除了必須提供顯式包含它的JAR。該artifact始終可用,並且不會在存儲庫中查找更新。

6、import

此範圍僅受<dependencyManagement>部分中類型爲pom的依賴項才支持;它在指定的POM的<dependencyManagement>部分中指示要用有效的依賴關係列表替換的依賴關係;由於它們已被替換,因此具有import範圍的依賴項實際上並不參與限制依賴項的可傳遞性。

<dependencyManagement>
  <dependencies>
    <dependency>
    <groupId>com.fasterxml.jackson</groupId>
    <artifactId>jackson-bom</artifactId>
    <version>${jackson.version}</version>
    <type>pom</type>
    <scope>import</scope>

    </dependency>
.....

官網說明:

http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章