maven 學習筆記
MAVEN的核心是pom.xml,pom定義了專案的基本資訊。
maven的座標:maven世界中擁有大量的構件,為每一個構件都定義了唯一的座標標識。
定義一個專案的基本座標,需要:
groupId(定義了專案隸屬的實際專案),
artifactId(定義了當前maven在組中的唯一id),
version(定義了當前專案的版本),(以上為必寫)
package(定義了打包方式)預設為Jar,(可選)
classifier(幫助定義構建輸出的一些附屬構件)(不可以直接定義)
scm 使用來to commit the modified sources 應該是用來獲取資源,更新版本的
extensions used for the transport of artifact between repositories, and plug-ins which provide lifecycle enhancements.
配置依賴:
groupId,artifactId,version
type:依賴的型別,對應於package,預設為Jar
scope:依賴的範圍
optional:標記依賴是否可選
exclusions:排除傳遞性依賴
依賴範圍:
編譯的時候用一套classpath(叫編譯classpath)
測試的時候用一套classpath(叫測試classpath)
執行的時候用一套classpath(叫執行classpath)
依賴範圍就是用來控制依賴與這三種範圍的關係:
compile 預設的範圍,對編譯,測試,依賴都有效
test 只對測試classpath有效
provided 對編譯和測試classpath有效
runtime對執行時classpath有效
system 系統依賴範圍,範圍和provided一樣,是根據本地系統繫結的,所有可移植性可能不會很好
傳遞依賴
當第二直接依賴為compile時,傳遞依賴範圍為第一依賴的範圍
當第二直接依賴為test時,依賴不會傳遞
當第二直接依賴為provided時,只會傳遞Privide依賴
當第二直接依賴為runtime時,傳遞依賴範圍為第一依賴的範圍
依賴調解:
1.路徑最近者優先
2.第一宣告者優先
可選依賴:
當2個依賴不可以共存的是,可用可選依賴
<optional>true<optional>
<optional>false<optional>
相關文章
- Javaxuex學習筆記---MavenJava筆記Maven
- Maven 學習筆記一Maven筆記
- Maven 學習筆記——Maven和Eclipse(2)Maven筆記Eclipse
- Maven 學習筆記——Maven環境配置(1)Maven筆記
- Git和Maven的學習筆記GitMaven筆記
- Maven學習筆跡Maven
- 學習筆記——Maven 如何處理傳遞性依賴筆記Maven
- Maven 學習筆記——將普通的Java專案轉換成Maven專案(3)Maven筆記Java
- Maven 筆記Maven筆記
- numpy的學習筆記\pandas學習筆記筆記
- IT學習筆記筆記
- 學習筆記筆記
- maven使用筆記Maven筆記
- Maven 學習Maven
- Maven學習Maven
- 【學習筆記】數學筆記
- 《JAVA學習指南》學習筆記Java筆記
- Elasticsearch學習筆記Elasticsearch筆記
- Scala學習筆記筆記
- MySql學習筆記MySql筆記
- jQuery 學習筆記jQuery筆記
- react學習筆記React筆記
- 學習筆記(4.3)筆記
- 學習筆記(4.4)筆記
- 學習筆記(3.29)筆記
- 學習筆記(4.1)筆記
- AOP學習筆記筆記
- AspectJ學習筆記筆記
- 學習筆記(3.27)筆記
- 學習筆記(4.2)筆記
- golang 學習筆記Golang筆記
- Zookeeper學習筆記筆記
- 學習筆記(3.24)筆記
- 學習筆記(3.25)筆記
- 學習筆記(3.21)筆記
- GitHub學習筆記Github筆記
- jest 學習筆記筆記
- typescript 學習筆記TypeScript筆記