【Maven】Java项目管理工具
一、為什么要Maven
在開發中經常需要依賴第三方的包,包與包之間存在依賴關系,版本間還有兼容性問題,有時還里要將舊的包升級或降級,當項目復雜到一定程度時包管理變得非常重要。
?
Maven是當前最受歡迎的Java項目管理構建自動化綜合工具,類似以前Java中的Ant、node.js中的npm、dotNet中的nuget、PHP中的Composer。
Maven這個單詞來自于意第緒語(猶太語),意為知識的積累。
Maven提供了開發人員構建一個完整的生命周期框架。開發團隊可以自動完成項目的基礎工具建設,Maven使用標準的目錄結構和默認構建生命周期。Maven讓開發人員的工作更輕松,同時創建報表,檢查,構建和測試自動化設置。Maven簡化和標準化項目建設過程。處理編譯,分配,文檔,團隊協作和其他任務的無縫連接。 Maven增加可重用性并負責建立相關的任務。
每個Java項目的目錄結構都沒有一個統一的標準,配置文件到處都是,單元測試代碼到底應該放在那里也沒有一個權威的規范。
因此,我們就要用到Maven(使用Ant也可以,不過編寫Ant的xml腳本比較麻煩)----一個項目管理工具。
Maven主要做了兩件事:
如果沒有Maven,你可能不得不經歷下面的過程:
1 如果使用了spring,去spring的官網下載jar包;如果使用hibernate,去hibernate的官網下載Jar包;如果使用Log4j,去log4j的官網下載jar包..... 2 當某些jar包有依賴的時候,還要去下載對應的依賴jar包 3 當jar包依賴有沖突時,不得不一個一個的排查 4 執行構建時,需要使用ant寫出很多重復的任務代碼 5 當新人加入開發時,需要拷貝大量的jar包,然后重復進行構建 6 當進行測試時,需要一個一個的運行....檢查
有了Maven,它提供了三種功能:
1 依賴的管理:僅僅通過jar包的幾個屬性,就能確定唯一的jar包,在指定的文件pom.xml中,只要寫入這些依賴屬性,就會自動下載并管理jar包。 2 項目的構建:內置很多的插件與生命周期,支持多種任務,比如校驗、編譯、測試、打包、部署、發布... 3 項目的知識管理:管理項目相關的其他內容,比如開發者信息,版本等等?官網:http://maven.apache.org/
教程:https://www.yiibai.com/maven/
Maven庫:http://repo2.maven.org/maven2/?
中央倉庫資源:
http://mvnrepository.com/
https://search.maven.org/
二、安裝與配置
其實主流的開發工具如IDEA、Eclipse都集成了Maven(可見重要性),但為了更加深刻的學習與管理該工具(比如多個IDE共享的問題),個人建議還是單獨安裝比較好。
2.1、官網下載安裝包
在瀏覽器中打開下載地址:http://maven.apache.org/download.cgi
2.2、配置環境變量
注意:安裝maven之前,必須先確保你的機器中已經安裝了JDK,如果是Maven3則必須JDK1.7以上。
1.解壓壓縮包
2.添加環境變量MAVEN_HOME,值為apache-maven的安裝路徑(沒有中文)
3.在Path環境變量的變量值末尾添加%MAVEN_HOME%\bin;
4.在cmd輸入mvn –version,如果出現maven的版本信息,說明配置成功。
2.3、本地倉儲配置
如果您不配置,默認會在如下位置存放從遠程下載到的包:
?
從中央倉庫下載的jar包,都會統一存放到本地倉庫中。我們需要配置本地倉庫的位置。
打開maven安裝目錄,打開conf目錄下的setting.xml文件。
可以參照下圖配置本地倉儲位置。
你還可以在運行時指定本地倉庫位置:
mvn clean install -Dmaven.repo.local=d:\yourpath
2.4、中央倉庫配置
當構建一個Maven項目時,首先檢查pom.xml文件以確定依賴包的下載位置,執行順序如下:
1、從本地資源庫中查找并獲得依賴包,如果沒有,執行第2步。 2、從Maven默認中央倉庫中查找并獲得依賴包(http://repo1.maven.org/maven2/),如果沒有,執行第3步。 3、如果在pom.xml中定義了自定義的遠程倉庫,那么也會在這里的倉庫中進行查找并獲得依賴包,如果都沒有找到,那么Maven就會拋出異常。
修改默認中央倉庫地址
?
常用地址:
1、http://www.sonatype.org/nexus/ 私服nexus工具使用 2、http://mvnrepository.com/ (推薦) 3、http://repo1.maven.org/maven2 4、http://maven.aliyun.com/nexus/content/groups/public/ 阿里云 (強力推薦) 5、http://repo2.maven.org/maven2/ 私服nexus工具使用 6、http://uk.maven.org/maven2/ 7、http://repository.jboss.org/nexus/content/groups/public 8、http://maven.oschina.net/content/groups/public/ 9、http://mirrors.ibiblio.org/maven2/ 10、http://maven.antelink.com/content/repositories/central/ 11、http://nexus.openkoala.org/nexus/content/groups/Koala-release/ 12、http://maven.tmatesoft.com/content/groups/public/
總結
以上是生活随笔為你收集整理的【Maven】Java项目管理工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python3导入自定义模块的3种方式
- 下一篇: java 并发组件_Java 并发计数组