1. 程式人生 > >Java-Maven專案管理與實戰,1、maven簡單概括;2、maven環境的配置;3、maven常規專案結構講解;4、專案編譯;5、專案啟動

Java-Maven專案管理與實戰,1、maven簡單概括;2、maven環境的配置;3、maven常規專案結構講解;4、專案編譯;5、專案啟動

非專業性術語表達,主要方便理解。

一、Maven簡單概括:

1、傳統經典java-web專案的結構,往往是所有業務程式碼融合到src中,依賴支援放到lib中。

弊端(列舉2個):A、業務不能模組分離管理;B、lib中的jar太多會導致專案過大,不利於下載與copy給團隊其他成員。

2、經典專案的管理方式,不利於現在企業的發展,Maven與Ant都是用於進行專案管理的工具,它們都有自己的優勢。

3、maven不是一種技術,開發人員理解不要有誤,maven是一種專案管理工具,讓專案開發過程中能有效、有結構性的管理你的工程專案,而針對採用maven結構進行專案管理的專案,都稱為maven專案。

4、maven主要有lib倉庫、專案編譯打包兩個主要優勢。

A、公有lib倉庫:https://mvnrepository.com/,理解為已有團隊把所有的主流開源jar都集中進行管理了,可供大家下載。

B、本地倉庫:當開發maven專案時,你的maven專案所需要依賴的jar支援會從公有倉庫下載下來,下載到你本機電腦的管理目錄,即為你的本地lib倉庫。注意maven的優勢就是當本地不存在此jar包它即下載,已經存在了則不會下載,即等於你執行maven專案時首次會下載該maven專案所依賴的jar到你本地,如發現你本地倉庫已經有了,則跳過去下載其他的沒有的jar給你本機,這樣的好處是今後你的本地倉庫的jar支援會越來越全面,今後去下載其他的別人的maven專案你都可以直接執行,而且你下載的只是程式碼,無須再次下載jar,只有別人專案中的還有對其他的jar依賴而你本機還沒有的時候才會需要你去下載。

C、maven專案,編譯很方便,特別是當出現業務進行分離管理時,同樣可以有效的進行編譯。

二、maven安裝與配置,eclipse配置:

安裝完成後,開啟eclipse,選擇工作空間,先給當前工作空間接入自己的maven倉庫。注意:eclipse每次更換工作空間後,你的maven都需要重新配置。

本地maven倉庫截圖:表示今後你本地有了一個自己的lib倉庫,便於今後eclipse去依賴本地的倉庫,如發現本地倉庫不存在,ecplise檢測後會自動下載lib到你本地倉庫。

三、Maven常規專案結構講解:

1、單專案結構:

單專案結構的運用並不多見,因為如果只是單專案結構,跟傳統經典專案來對比,只是結構不同,並沒有區別出maven的優勢。

2、多專案結構:也可以理解為parent-child管理或者模組化管理。

A、多專案結構的管理的運用隨處可見,因為maven的主要核心優勢-可進行模組化管理。

B、子專案可以是java模組(即純java專案),也可以是web模組(即web應用專案)。

C、常見的maven專案,會建立子模組為java模組,也會建立子模組為web模組,web模組常依賴java模組;很多開發團隊會習慣性的,對工具模組,業務模組,api服務模組等進行劃分成子模組(以java模組),帶有檢視介面的作為web模組應用。

四、專案編譯

1、maven單模組專案-run as -maven install ,表示編譯當前單模組專案,編譯後的結果在target下。

2、maven的主專案(即parent)-run as -maven install ,表示編譯整個主專案,包括主專案下的子專案也會重新編譯打包,主專案不存在target目錄,所以不存在主專案直接執行或者打包部署。往往都是打包web模組專案。

如圖:

五、專案啟動方式:

A、啟動target下編譯後的專案:

B、選擇web模組專案,run as -run on server啟動方式,也可以。

啟動如果報錯,解決方案:

RC(right click on web project) --> properties --> Deployment Assembly --> Add --> Java Build Path Entries --> Next -->Maven Dependencies --> finish