摘要:基本配置環(huán)境變量環(huán)境變量中添加為主目錄在中添加使用阿里云中央倉庫修改根目錄下文件夾中的文件,內(nèi)容如下創(chuàng)建基于的項目使用命令行創(chuàng)建使用原型插件創(chuàng)建工程。
「博客搬家」 原地址: 簡書 原發(fā)表時間: 2017-03-23
Maven 是基于項目對象模型「POM」,可以通過一小段描述信息來管理項目的構(gòu)建、報告和文檔的軟件項目管理工具。本文總結(jié)了 Maven 的基本用法。1. Maven 基本配置 1.1 環(huán)境變量
環(huán)境變量中添加「M2_HOME」為 maven 主目錄
在 path 中添加「;%M2_HOME%bin」
1.2 使用 Maven 阿里云中央倉庫修改 Maven 根目錄下 conf 文件夾中的 setting.xml 文件,內(nèi)容如下:
2. 創(chuàng)建基于 Maven 的 Java 項目 2.1 使用命令行創(chuàng)建alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central
Maven 使用原型「archetype」插件創(chuàng)建工程。要創(chuàng)建一個簡單的 Java 應(yīng)用,我們將使用 maven-archetype-quickstart 插件。
Maven 創(chuàng)建目錄有兩種方式:「archetype 可自動創(chuàng)建目錄骨架」
在 cmd 中直接執(zhí)行「mvn archetype:generate」按照提示進(jìn)行選擇,選擇如下 Archetype:
943: remote -> org.apache.maven.archetypes:maven-archetype-quickstart (An archetype which contains a sample Maven project.)
使用單行命令創(chuàng)建項目,命令格式如下:
mvn archetype:generate -DgourpId = 組織名,公司網(wǎng)址的反寫 + 項目名稱 -DartifactId=項目名-模塊名 -Dversion=版本號 -Dpackage=代碼所在的包名
示例如下:
mvn archetype:generate -DgroupId=cc.bitky.demo -DartifactId=demo-module -Dversion=1.0.0-SNAPSHOT -Dpackage=cc.bitky.demo.module2.2 使用InteliJ IDEA 創(chuàng)建
在 InteliJ IDEA 中創(chuàng)建基礎(chǔ)的示例 Maven 項目,依舊選擇:
org.apache.maven.archetypes:maven-archetype-quickstart
如圖所示:
3. 目錄結(jié)構(gòu) 3.1 Maven 項目的目錄結(jié)構(gòu)在 Maven 項目的根目錄下,有如下必要的目錄結(jié)構(gòu):
src
main
resources「存放一些資源文件」
java
package「自定義的包」
test
resources「存放一些資源文件」
java
package
pom.xml
如下圖所示:
3.2 項目根目錄下「pom.xml」的典型結(jié)構(gòu):4. Maven 操作 4.1 構(gòu)建命令4.0.0 maven版本-->cc.bitky.demo 項目的包名-->demo-module 模塊名-->1.0.0-SNAPSHOT 版本-->jar demo-module http://maven.apache.org UTF-8 junit junit 3.8.1 test
mvn -v 版本。
mvn compile 編譯。
mvn test 測試。
mvn package 打包。
mvn clean 清除maven生成的target目錄。
mvn install 將生成的jar安裝到本地倉庫中。
4.2 生命周期mvn compile: 編譯主程序源代碼,不會編譯test目錄的源代碼。第一次運行時,會下載相關(guān)的依賴包,可能會比較費時
mvn test: 運行應(yīng)用程序中的單元測試,會生成 target 文件夾:
主程序編譯的字節(jié)碼文件在 classes 下面
測試程序放在 test-classes 下
所生成的測試報告放在 surefire-reports 文件夾下
mvn package 會在target目錄下生成 Jar 包,如「maven01-model-0.0.1SNAPSHPT.jar」
Maven的生命周期大概如下,這幾個命令對應(yīng)了一個項目的完整的構(gòu)建過程,這幾個步驟對應(yīng)的都有插件來完成:
clean 「清理」
compile 「編譯」
test 「測試」
package 「打包」
install「安裝到本地庫」
Maven的生命周期分為三個獨立的生命周期(每一個生命周期有分為若干個階段,其中defaul是最核心的一個):
clean「清理項目」
default「構(gòu)建項目」
site「生成項目的站點」
4.2.1 clean「清理項目」pre-clean 「執(zhí)行清理前的工作」
clean「清理上一次構(gòu)建生成的所有文件」
post-clean「執(zhí)行清理后的文件」
4.2.2 default「構(gòu)建項目」(最核心)compile 「編譯」
test 「測試」
package 「打包」
install「安裝到本地庫」
4.2.3 site「生成項目站點」pre-site「在生成項目站點之前要完成的工作」
site「生成項目的站點文檔」
post-site「在生成項目站點后要完成的工作」
site-deploy「發(fā)布生成的站點到服務(wù)器上」
注意
每個獨立的生命周期,只需執(zhí)行其中一個命令,此時會從該生命周期的開始命令順序執(zhí)行到該命令。
Maven的生命周期對應(yīng)的命令是順序執(zhí)行的,如果沒有人為的順序的一個個執(zhí)行,那么Maven會默認(rèn)的自動運行。
如執(zhí)行「mvn clean test」,則此時會順序執(zhí)行「pre-clean clean post-clean compile test」
如執(zhí)行「mvn test」,則此時會順序執(zhí)行「compile test」
5. 參考資料Maven 教程 - 「極客學(xué)院 Wiki」
項目管理利器 — maven「慕課網(wǎng)」
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/68254.html
摘要:要從頭開始,請繼續(xù)使用構(gòu)建。現(xiàn)在您已經(jīng)準(zhǔn)備好使用構(gòu)建項目,下一步是安裝。項目使用名為的文件定義。項目所屬的組或組織。默認(rèn)情況下,所有依賴項都作為依賴項確定范圍。概要恭喜您已經(jīng)為構(gòu)建項目創(chuàng)建了一個簡單而有效的項目定義。 本指南將指導(dǎo)您使用Maven構(gòu)建一個簡單的Java項目。 你要構(gòu)建什么 您將創(chuàng)建一個提供一天中時間的應(yīng)用程序,然后使用Maven構(gòu)建它。 你需要什么 大約15分鐘 最喜...
摘要:項目構(gòu)建基礎(chǔ)從屬于筆者的現(xiàn)代開發(fā)基礎(chǔ)系列文章,介紹了的歷史背景與多種構(gòu)建工具對比,以及的基本配置安裝與使用本文涉及的參考資料聲明在學(xué)習(xí)與實踐資料索引以及學(xué)習(xí)與資料索引。 Maven 項目構(gòu)建基礎(chǔ)從屬于筆者的現(xiàn)代 Java 開發(fā)基礎(chǔ)系列文章,介紹了 Maven 的歷史背景與多種構(gòu)建工具對比,以及 Maven 的基本配置安裝與使用;本文涉及的參考資料聲明在 Java 學(xué)習(xí)與實踐資料索引以及...
摘要:清除構(gòu)建緩存為每一個服務(wù)的構(gòu)建環(huán)境提供緩存,項目會對的安裝目錄,配置目錄,和本地倉庫目錄提供了緩存,用戶通過以下設(shè)置清理緩存。本文檔詳細(xì)介紹了源碼構(gòu)建項目時的各種詳細(xì)設(shè)置與操作。 概述 根據(jù)大量的Rainbond用戶反饋,我們發(fā)現(xiàn)在Rainbond源碼構(gòu)建java-maven項目的過程中,最容易出現(xiàn)問題的一環(huán)就是獲取構(gòu)件失敗。 比如: [ERROR] Failed to execute...
摘要:在之前,十個項目可能有十種構(gòu)建方式,但通過,所有項目的構(gòu)建命令都是簡單一致的。有利于促進(jìn)項目團(tuán)隊的標(biāo)準(zhǔn)化。手工勞動往往意味著低效,意味著容易出錯。這在很大程度上消除了重復(fù)。默認(rèn)情況下,該文件夾下放置了本地倉庫。學(xué)習(xí)實戰(zhàn)許曉斌著 Introduction Maven是一個異常強(qiáng)大的構(gòu)建工具,能夠幫我們自動化構(gòu)建過程,從清理、編譯、測試到生成報告,再到打包和部署。通過Maven,我們只需要...
摘要:允許將反序列化為沒有附加注釋元數(shù)據(jù)不可變的類。包的庫經(jīng)常會想支持多個版本的這樣做需要構(gòu)建一個為每個版本的支持工件它介紹了如何區(qū)分這些工件的問題看到像不支持添加額外的元數(shù)據(jù)依賴關(guān)系的想法來指定他們需要什么版本的。 1.Defining a Lagom build(定義一個Lagom構(gòu)建) 正如在Lagom構(gòu)建哲學(xué)中已經(jīng)討論過的那樣,使用Lagom,您可以自由地將所有服務(wù)組合在一個單獨的構(gòu)...
閱讀 3455·2019-08-30 15:55
閱讀 2054·2019-08-30 15:44
閱讀 1460·2019-08-30 12:47
閱讀 746·2019-08-30 11:05
閱讀 1633·2019-08-30 10:54
閱讀 659·2019-08-29 16:07
閱讀 3572·2019-08-29 14:17
閱讀 2230·2019-08-23 18:31