Maven Dependency Scope 的使用說明
一、 pom.xml檔 使用 Dependency Scope
<!-- 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
- 首頁
- JAVA 目錄
- JAVA WEB 目錄
- JAVA 其他未分類 目錄
- Grails目錄
- jQuery 目錄
- Apache 目錄
- JavaScript 目錄
- Spring + Hibernate 目錄
- Hibernate 目錄
- Linux 目錄
- 程式開發工具目錄
- MySQL 目錄
- PHP目錄
- C/C++ 目錄
- Google App Engine 目錄
- HTML5/CSS3
- 程式開發基本資訊
- Android
- Oracle 目錄
- Struts 目錄