Maven Dependency Scope 的使用說明


一、 pom.xml檔 使用 Dependency Scope

pom.xml內容:
<!-- servlet api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${javax.servlet.version}</version>
<scope>provided</scope>
</dependency>
本文主角
<scope>provided</scope>




二、目前<scope>可以使用5個設定:

 1、 compile  (編譯)

此為預設值,表示此jar是所有階段需要的。 部署時將一起被打包到jar/war裡面。

 2、 test (測試)

表示此jar檔只有在測試時,才需要使用。如 junit jar 等。
部署時將不會打包到jar/war裡面。

 3、 runtime (運行)

表示此jar檔只有在運行時,才需要使用。如jdbc jar等。

 4、 provided (已提供)

當運行時,表示此jar檔期望由JDK、Tomcat及jboss等來提供。如 servlet.jar、jsp-api.jar 等。
部署時將不會打包到jar/war裡面。

 5、 system (系統)

表示此jar檔有系統提供。跟provided 相似,這是以外部JAR檔的形式提供。
而在maven repository 是無法找到它的。
需指定位置,配合 systemPath 來使用。

參考:
Dependency Scopes



























其它文章

arrow
arrow
    文章標籤
    Maven java
    全站熱搜

    PG Levin Li 發表在 痞客邦 留言(0) 人氣()