Maven
Maven的安裝
下載安裝包,直接解壓就可以使用
目錄
bin—構建項目
boot----maven運行的類加載器
conf------中有一個setings是我們對maven配置的很重要的一個配置文件
lib----------maven自身運行需要的一些jar包
需要配置maven的環境變量
path的環境變量
注意:maven的運行需要依賴於javahome的環境變量(確定我們的環境中有javahome)
如何確定我們的maven環境已經安裝好了
DOS輸入 : mvn -v
簡述
項目管理工具
- 解決jar包管理
- 自動編譯
- 自動的單元測試
- 打包整合配置文件和代碼,便於維護
- 生成打包,部署文件
maven依賴管理
maven工程中,我們不在需要自己將項目中的jar包導入到項目中,而是用依賴的方式,從遠程倉庫中拿到jar包到本地使用,這是我們得項目打包之後的內存下
- 傳統的web工程----------jar包在項目中
- maven開發的項目--------------jar包不在項目中
既然不在項目中,那麼maven工程中怎麼編譯和運行時找到jar包呢?
是從遠程倉庫中找到jar包,怎麼找?jar包的座標
maven符合代碼可重用.
依賴管理:maven工程對jar包的管理過程就是依賴管理.具體的講就是maven項目中不需要在放jar包,而是放在中央倉庫中,當我們項目編譯或者運行的過程中,會通過jar包的座標去中央倉庫中找到對應的jar包.
maven一鍵購鍵
我們的項目,往往都要經過編譯.測試.運行.打包.安裝.部署等一系列的過程
什麼是構建?
指的是:項目從編譯.測試.運行.打包.安裝.部署等一系列的過程都交給maven進行管理,過程稱爲構建
一鍵構建指的是整個構建過程,使用maven一個命令可以輕鬆完成整個工作
Maven規範化構建流程
maven將項目構建進行標準化,每個階段使用一個命令完成.
清理------編譯------測試--------報告-------打包-----------部署
Maven倉庫的種類和彼此關係
Maven標準目錄結構:
首先我們確定我們的項目中應該包含哪些部分:
- 核心代碼部分
- 配合文件部分
- 測試代碼部分
- 測試配置部分
maven項目標準目錄結構
- src/main/java目錄 :核心代碼目錄
- src/main/resources:配置文件目錄
- src/test/java目錄:測試代碼部分
- src/test/resources:測試配置文件
- src/main/webapp 頁面資源js,css圖片頁面等
maven常用命令:
- compile:是maven工程的編譯命令,作用是將src/main/java下的文件編譯爲class文件輸出到target目錄中
- 在項目中進入cmd頁面,執行mvn compile命令
- clean:刪除該項目在本地編譯的所有的文件(因爲項目拿過來之後因爲使用的(開發環境)軟件的版本不同可能不能編譯成功),然後自己重新編譯.
- 在項目中進入cmd頁面,執行mvn clean命令
- text:是maven工程的編譯命令,作用是將src/main/text和src/main/java下的文件編譯爲class文件輸出到target目錄中
- 在項目中進入cmd頁面,執行mvn text命令
- package:將項目打包,放在了target目錄下生成了一個項目的打包文件xxx.war(爲什麼打包爲war包,和maven的配置有關),這個命令和同時把java目錄下和text目錄下的文件編譯
- 在項目中進入cmd頁面,執行mvn package命令
- install:項目部署,將這個項目安裝到了本地倉庫,並且也同時把java目錄和text目錄下的文件編譯,並且打包爲war包
Maven生命週期
Maven概念模型圖
IDEA集成maven工具
前提是:我們的電腦上已經安裝了maven工具
而且正確的安裝了jdk(maven工具依賴jdk)
配置SSL認證
配置這個的目的是:繞過SSL認證,就可以在配置了鏡像倉庫之後來下載jar包,不然很可能下載失敗
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true
maven項目的創建
- 不使用骨架創建maven項目
- 使用quickstart骨架創建maven項目
- 使用骨架創建webapp項目
- 注意需要自己創建src下的java包並標記爲源碼包
maven項目的導入
- 創建新的空的項目
- 用右邊的maven工具打開要導入項目的pom文件
- 調整jar包的依賴
maven中常見的問題
1.maven項目中依賴導入但是不能正常使用jar包
2.導入新項目時,maven projects欄中dependencies中總是有紅色波浪線
其實我們的倉庫中應該是有哪些jar包的,但是可能因爲IDEA的bug而找不到jar包
其中一個解決方案就是:
- 現在 maven projects工具欄執行 mvn clean命令,刪除之前的編譯
- 在項目pom中先刪除有紅線的jar包的依賴
- 在maven projects的工具欄中reimport(或者在點擊pom.xml的maven標籤中的reimport)
需要注意的
在maven projects欄中dependencies中總是有紅色波浪線,並不一定是我們的jar包依賴有錯,只有那種前面有小三角符號的才真正是jar包依賴有問題,其他的可能是我們在修改pom.xml文件時因爲會自動保存和部署,而造成的一些很隨意的字符的錯誤
1.另外tomcat的版本和jdk的版本也要特別注意
<!--maven插件-->
<plugins>
<!--jdk編譯插件-->
<plugin>
<!--配置jdk -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<target>1.8</target>
<source>1.8</source>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!--tomcat插件-->
<plugin>
<!--配置tomcat7 要設置爲自己的tomcat的版本 -->
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<!-- 配置端口號 -->
<configuration>
<port>80</port>
<!-- 項目訪問路徑 本例:localhost:9090, 如果配置的aa, 則訪問路徑爲localhost:9090/aa-->
<path>/travel</path>
</configuration>
</plugin>