1. 程式人生 > >23.Maven 專案介紹

23.Maven 專案介紹

Maven 專案介紹

學習前提

相對於傳統的專案,Maven 下管理和構建的專案真的非常好用和簡單,所以這裡也強調下,儘量使用此類工具進行專案構建。

學習本講還有一個前提:你必須會 Maven 相關知識點,Maven 相關知識點是不在本專題的講解範圍裡面的,所以請自己私下進行學習。如果願意你也可以看我過去整理的一份材料:http://www.youmeek.com/intellij-idea-part-xviii-maven/

Maven 常用設定介紹

Maven 常用設定介紹

  • 如上圖標註 1 所示,我們可以指定我們本地 Maven 的安裝目錄所在,因為我已經配置了 MAVEN_HOME 系統引數,所以直接這樣配置 IntelliJ IDEA 是可以找到的。但是假如你沒有配置的話,這裡可以選擇你的 Maven 安裝目錄。
  • 如上圖標註 2 所示,我們還可以指定 Maven 的 settings.xml 位置和本地倉庫位置。

Maven 常用設定介紹

  • 如上圖標註 1 所示,Import Maven projects automatically 表示 IntelliJ IDEA 會實時監控專案的pom.xml 檔案,進行專案變動設定。
  • 如上圖標註 2 所示,在 Maven 匯入依賴包的時候是否自動下載原始碼和文件。預設是沒有勾選的,也不建議勾選,原因是這樣可以加快專案從外網匯入依賴包的速度,如果我們需要原始碼和文件的時候我們到時候再針對某個依賴包進行聯網下載即可。IntelliJ IDEA 支援直接從公網下載原始碼和文件的。
  • 如上圖標註 3 所示,可以設定匯入的 VM 引數。一般這個都不需要主動改,除非專案真的匯入太慢了我們再增大此引數。

Maven 骨架建立 Java Web 專案

Maven 骨架建立 Java Web 專案

  • 如上圖 Gif 演示,根據已有的 Maven 骨架進行 Java Web 專案建立。其中需要特別注意的是,在建立專案過程中 Maven 會去外網中央倉庫中下載對應的依賴或是元件,這個過程根據自身網路環境決定其快慢。如果出現無法下載的情況請自備 VPN 或者通過修改 Maven 配置檔案 settings.xml 切換國內的中央倉庫。
  • 由於我已經試過多次了,所以 Gif 演示中我可以快速建立好,但是你那邊不一定是這種情況的。

啟動 Java Web 專案

Maven 骨架建立 Java Web 專案

  • 如上圖 Gif 演示,配置好專案之後,啟動 Tomcat 容器可以良好執行。

Maven 元件來管理專案

我們已經瞭解瞭如何通過 Maven 骨架生成一個最簡單的 Java Web 專案,可是我們還是使用了 IntelliJ IDEA 的專案管理功能進行 Maven 專案的管理和構建。一般 Maven 的專案我們都可以脫離 IntelliJ IDEA 的專案配置功能進行獨立的管理和構建的,接下來我們就講如何通過 IntelliJ IDEA 提供的 Maven 管理工具進行專案的管理和構建。

Maven 元件介面介紹

Maven 元件介面介紹

  • 如上圖標註 1 所示,為常用的 Maven 工具欄,其中最常用的有:

    • 第一個按鈕:Reimport All Maven Projects 表示根據 pom.xml 重新載入專案。一般當我們在 pom.xml 添加了依賴包或是外掛的時候,發現標註 4 的依賴區中沒有看到最新寫的依賴的話,可以嘗試點選此按鈕進行專案的重新載入。
    • 第六個按鈕:Execute Maven Goal 彈出可執行的 Maven 命令的輸入框。有些情況下我們需要通過書寫某些執行命令來構建專案,就可以通過此按鈕。
    • 第九個按鈕:Show Dependencies 顯示專案依賴的結構圖,可以方便我們直觀專案的依賴包情況。這個功能有些具體的操作下面會專門進行講解。
  • 如上圖標註 2 所示,常用的 Maven 生命週期的命令,通過雙擊對應的命令來執行專案編譯、打包、部署等操作。

  • 如上圖標註 3 所示,為我們在 pom.xml 中配置的外掛列表,方便呼叫外掛。

  • 如上圖標註 4 所示,為我們在 pom.xml 中配置的依賴包列表。

  • 如上圖標註 5 所示,為常見的 Java Web 在 Maven 下的一個專案結構。

Maven 的 Tomcat 外掛執行專案

Maven 的 Tomcat 外掛執行專案

  • 如上圖 Gif 演示,通過 Maven 生命週期的命令進行編譯和打包,及用 Maven 的 Tomcat 外掛執行專案。
  • 雖然我們可以通過 Maven 元件進行專案的管理,但是這並不等同於我們可以完全拋棄 IntelliJ IDEA 的專案設定,比如我們在 pom.xml 檔案中設定了 JDK 編譯版本是 1.7,但是在專案的 Ctrl + Shift + Alt + S 配置中,我們配置的 JDK 是 1.8,那即使我們用 Maven 的編譯工具或命令進行編譯也是會呼叫 1.8的。還有即使我們在 Ctrl + Shift + Alt + S 配置中沒有配置 Artifacts,在我們執行 Maven 的 Tomcat 外掛的時候也會自動幫我們生成的。

Maven 快速排查依賴包衝突

Maven 快速排查依賴包衝突

  • 如上圖箭頭所示,點選此按鈕會出現左邊的專案依賴結構圖,通過此圖我們可以很好的觀察專案的依賴依賴情況。
  • 如上圖標註 1 所示,我們可以直接在依賴結構圖上編輯依賴,常用的就是此排除功能。

Maven 快速排查依賴包衝突

  • 如上圖描述,一般我們在出現紅色線的時候是都要進行排除的,防止出現因為版本不同的依賴包造成程式碼無法編譯。