Maven項目對象模型(POM),能夠經過一小段描述信息來管理項目的構建,報告和文檔的項目管理工具軟件。spring
Maven這個單詞來自於意第緒語(猶太語),意爲知識的積累,最初在Jakata Turbine項目中用來簡化構建過程。apache
歸納地說,Maven簡化和標準化項目建設過程。處理編譯,分配,文檔,團隊協做和其餘任務的無縫鏈接。 Maven增長可重用性並負責創建相關的任務。tomcat
Maven 和 Ant 針對構建問題的兩個不一樣方面。Ant 爲 Java 技術開發項目提供跨平臺構建任務。Maven 自己描述項目的高級方面,它從 Ant 借用了絕大多數構建任務。bash
1 約定優於配置 (Convention over configuration) 2簡單 3測試支持 4 構建簡單 5 CI 6 插件豐富maven
a) https://maven.apache.org/download.cgi 直接解壓ide
bin目錄 :命令 boot:Class loader 類加載器 :conf目錄:全部配置的setting.xml 工具
超級pom.xml目錄:D:\Develop software\apache-tomcat-7.0.52\apache-maven-3.5.4\lib\maven-model-builder-3.5.4.jar\org\apache\maven\model post
環境配置:MAV_HOME測試
用戶請求————>./(用戶目錄下的)m2/setting.xml ——————>config/.m2/setting.xmlui
maven在IDEA裏配置:setting/maven 配置運行的setting.xml和D:\Develop software\apache-tomcat-7.0.52\maven-repository下載Jar包目錄。
setting.xml經常使用裏面標籤的含義(能夠本身配setting)
1 <localRepository> jar包下載路徑
2 <pluginGroups> 插件配置的運行
3 <proxies> 加相應的代理
4 <servers> 配置登陸名密碼
5 <mirrors> 配置鏡像下載。分享一個快速的阿里雲的配置
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>ui</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://uk.maven.org/maven2/</url>
</mirror>
<mirror>
<id>osc</id>
<mirrorOf>central</mirrorOf>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
<mirror>
<id>osc_thirdparty</id>
<mirrorOf>thirdparty</mirrorOf>
<url>http://maven.oschina.net/content/repositories/thirdparty/</url>
</mirror>
6 <profiles> 多個環境切換配置
pom.xml 經常使用裏面標籤的含義
a) pom.xml
dependencyManagemen
<properties> 變量(內置)
dependencyMangement 只出如今主pom,統一版本號,聲明和
dependency Type 默認jar,
scope下的子標籤
a) compile 編譯 例如spring-core
b) test 測試
c) provided編譯 例如 servlet
d) runtime運行時 例如JDBC驅動實現
e) system 本地一些jar 例如短信jar
f) 依賴傳遞
第一列表示直接依賴的scope,第一行表示間接依賴的scope
lifecycle生命週期/phase階段/goal
1.clean 裏有pre-clean,clean目標,post-clean
2 default 常見的有compile,package ,install ,depoly......
3 site 裏有 pre-site,site,post-site,site-deploy
以下圖所示