序
歡迎來到全網最完整的Java系列教程!!!
本教程将包含基礎知識、進階知識、常用架構等,循序漸進地分享Java中必須掌握的知識和技術。跟着老K的教程每天學習一點,你會發現入門Java沒有想象中那麼難。
在日常的Java項目開發當中,建構一個通用、合理、統一的項目工程架構,一直是很多程式員頭疼的事情。
要解決這個問題,我們就不得不提到Maven這個Java工具了。
本期我們就來分享Java項目工程管理的神器——Maven。
如果你正在學習Java,不妨收藏這篇文章,或者關注我,定期收獲與Java有關的知識和項目資訊!
一、介紹
Maven是一個由Apache 營運管理的Java工程管理工具,能便捷、高效地管理項目建構、報告、以及文檔管理。
- Maven的官網: https://maven.apache.org/
- Maven下載下傳位址:https://maven.apache.org/download.cgi
- Maven資源檢索:https://search.maven.org/
在下載下傳頁面可以看到下圖内容:
- Binary tar.gz archive: 适用linux環境的二進制包;
- Binary zip archive: 适用Windows環境的二進制包(一般下載下傳這個版本);
- Source tar.gz archive: 适用linux環境的源檔案包;
- Source zip archive: 适用Windows環境的源檔案包;
二、IDEA綁定
JetBrains的IDEA 是預設配置了maven的環境工具,一般來說IDEA配置的maven就夠用了。
但:
- 如果想自己配置和綁定特定版本的maven,可以繼續看下去;
- 如果使用IDEA預設maven的小夥伴,可以直接跳過本節内容。
下載下傳完成後,正常解壓,存放到合适的目錄下即可:
打開IDEA,點選菜單:
Settings -> Build, Execution, Deployment -> Build Tools -> Maven
點選Maven home path選項最右側的...按鈕,喚起檔案管理器對話框,找到Maven所在的目錄(一般目錄名預設為apache-maven-3.x.x,bin的上一級目錄)。
目錄路徑配置完成後,如果此時Maven home path下方的Version版本程式設計你配置的版本号,則綁定成功。你就可以愉快地在IDEA上使用maven了。
三、項目結構
标準的maven項目結構如下:
maven.project
┣━src
┃ ┣━main
┃ ┃ ┣━jave
┃ ┃ ┗━resources
┃ ┗━test
┃ ┗━java
┣━target
┃ ┣━classes
┃ ┗━generated-sources
┗━pom.xml
- pom.xml: pom是project object model的首字母縮寫,是maven的項目配置檔案,也是maven工具的核心;
- src/main/java: java項目的源代碼目錄;
- src/main/resources: java項目的資源檔案目錄;
- src/test: 項目的測試代碼包,測試用例存儲的位置;
- target/classes: 輸出的位元組碼檔案目錄。
四、常用标簽
通過在pom.xml檔案裡進行标簽設定,即能實作很多項目工程管理的功能。
1. 依賴坐标系
maven會自動完成依賴庫下載下傳安裝的工作,但前提條件是設定正确依賴坐标系。
<dependency>
<groupId>機構名</groupId>
<artifactId>項目名</artifactId>
<version>版本号</version>
</dependency>
說明:
- 上述包括groupId、artifactId、version被成為依賴坐标系,用來定位項目需要的依賴包;
- 依賴坐标系可以通過官方提供的檢索位址檢索:search.maven.org;
- 上述依賴坐标系需要設定在<dependencies>标簽内。
2. 自定義倉庫源
由于maven預設的apache倉庫源在境外伺服器上,更新安裝速度可能受限,可以通過下述方法,将倉庫源設定為國内鏡像。
<repository>
<id>倉庫編号(自定義、可随意設定)</id>
<name>倉庫名(自定義、可随意設定)</name>
<url>倉庫位址</url>
</repository>
說明:
- 上述倉庫源标簽需要設定在<repositories>标簽内;
- 上述id、name均為自定義項目,可随意設定,對配置沒有重大影響;
- 上述url必須是網上真實資源位址或鏡像位址;
- 提供常用的國内鏡像:
-阿裡雲:https://maven.aliyun.com/repository/public
-華為雲:https://repo.huaweicloud.com/repository/maven
3. 屬性标簽
在pom.xml檔案中有很多屬性的配置,在<properties>标簽下不僅能設定項目配置,還能設定變量。
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mysqlconnectorj.verison>8.0.31</mysqlconnectorj.verison>
</properties>
說明:
- 上例中的<project.build.sourceEncoding>是項目屬性配置,通過上述語句,可以将項目的字元編碼設定為utf-8,可以避免一些亂碼的情況;
- 上例中的<mysqlconnectorj.verison>是自定義變量配置,自定義變量的格式一般為<變量名>值</變量名>;
- 若要調用上述變量mysqlconnectorj.version的值,通過文法${變量名}即可。如:調用上例中的8.0.31,語句為${mysqlconnectorj.version}
4. 插件配置
maven還有很多實用的擴充插件,配置maven擴充的标簽方法如下:
- 設定插件坐标系
<build>
<plugins>
<plugin>
<groupId>機構名</groupId>
<artifactId>項目名</artifactId>
<version>版本号</version>
<configuration>配置資訊</configuration>
</plugin>
</plugins>
</build>
- 設定插件庫源
<pluginRepositories>
<pluginRepository>
<id>插件編号(自定義、可随意設定)</id>
<name>插件名(自定義、可随意設定)</name>
<url>插件位址</url>
</pluginRepository>
</pluginRepositories>
說明:
- 上述兩組标簽,都需要設定在pom.xml即可
- 插件庫源和倉庫源的配置一緻,url也相同
關于Maven的知識點和執行個體示範就先分享到這裡。
本期的内容較多,建議可以收藏這篇文章,多讀幾遍慢慢消化。
如果你對老K分享的内容有任何疑問,歡迎随時在評論區留言或者私信我。
正在學習的小夥伴記得給老K一個贊哦,你的支援是我持續輸出課程内容最大的動力!
閱讀推薦
我也分享過關于如何學習Java的文章,有需要的小夥伴可以點選下方連結擷取:
IT大佬推薦!學習Java的最優路徑 分享多個階段的學習資源 建議收藏
結束語
我是專注于開發領域的@老K玩代碼 ,會持續生産關于如何學習程式設計語言的優質内容。
如果你想學習Java程式設計,或者想精進你的Java程式設計能力,可以關注我。
如果你對開發、程式設計有任何疑問或者有想了解的内容,而我暫時沒有寫到的,也歡迎随時來找我聊聊。
#頭條創作挑戰賽#