日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Maven的简单配置说明

發(fā)布時(shí)間:2025/3/8 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven的简单配置说明 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

什么是Maven

Apache Maven,是一個(gè)軟件,一個(gè)項(xiàng)目管理工具,它包含了一個(gè)項(xiàng)目對(duì)象模型 (Project Object Model POM),一組標(biāo)準(zhǔn)集合,一個(gè)項(xiàng)目生命周期(Project Lifecycle),一個(gè)依賴管理系統(tǒng)(Dependency Management System),和用來運(yùn)行定義在生命周期階段(phase)中插件(plugin)目標(biāo)(goal)的邏輯。

  • POM:POM(project object model)是Maven對(duì)一個(gè)單一項(xiàng)目的描述。POM是Maven的核心,它是一個(gè)XML文件,包含了Maven用來創(chuàng)建項(xiàng)目所需要的項(xiàng)目配置的信息。
  • Maven 能夠幫助我們干什么?

    簡言之,Maven 可以幫助我們完成以下工作:

    • 項(xiàng)目構(gòu)建
    • 文檔管理
    • 生成測試報(bào)告
    • 解決項(xiàng)目間依賴項(xiàng)
    • 源代碼版本管理
    • 項(xiàng)目Releases
    • 項(xiàng)目的分發(fā)

    功能摘要(摘自官網(wǎng))

  • 遵循最佳實(shí)踐的簡單項(xiàng)目設(shè)置 - 在幾秒鐘內(nèi)啟動(dòng)新項(xiàng)目或模塊
  • 所有項(xiàng)目的一致使用 - 意味著新開發(fā)人員進(jìn)入項(xiàng)目的時(shí)間不會(huì)增加
  • 卓越的依賴管理,包括自動(dòng)更新,依賴關(guān)閉(也稱為傳遞依賴)
  • 能夠輕松地同時(shí)處理多個(gè)項(xiàng)目
  • 一個(gè)龐大且不斷增長的庫和元數(shù)據(jù)庫,可以立即使用,并與最大的開源項(xiàng)目一起安排,以實(shí)現(xiàn)最新版本的實(shí)時(shí)可用性
  • 可擴(kuò)展,能夠輕松編寫 Java或腳本語言的插件
    只需很少或不需要額外配置即可即時(shí)訪問新功能
    用于在Maven之外進(jìn)行依賴關(guān)系管理和部署的Ant任務(wù)
  • 基于模型的構(gòu)建:Maven能夠根據(jù)項(xiàng)目的元數(shù)據(jù)將任意數(shù)量的項(xiàng)目構(gòu)建到預(yù)定義的輸出類型(如JAR,WAR或分發(fā))中,而無需在大多數(shù)情況下執(zhí)行任何腳本。
  • 項(xiàng)目信息的連貫站點(diǎn):使用與構(gòu)建過程相同的元數(shù)據(jù),Maven能夠生成包含您需要添加的任何文檔的網(wǎng)站或PDF,并添加有關(guān)項(xiàng)目開發(fā)狀態(tài)的標(biāo)準(zhǔn)報(bào)告。在“項(xiàng)目信息”和“項(xiàng)目報(bào)告”子菜單下,可以在本網(wǎng)站左側(cè)導(dǎo)航欄的底部看到此信息的示例。
  • 發(fā)布管理和發(fā)布發(fā)布:沒有太多額外配置,Maven將與您的源代碼控制系統(tǒng)(如Subversion或Git)集成,并根據(jù)特定標(biāo)記管理項(xiàng)目的發(fā)布。它還可以將其發(fā)布到分發(fā)位置以供其他項(xiàng)目使用。Maven能夠發(fā)布單個(gè)輸出,例如JAR,包含其他依賴關(guān)系和文檔的存檔,或者作為源代碼分發(fā)。
  • 依賴管理:Maven鼓勵(lì)使用JAR和其他依賴項(xiàng)的中央存儲(chǔ)庫。Maven附帶了一種機(jī)制,您的項(xiàng)目客戶可以使用該機(jī)制從中央JAR存儲(chǔ)庫下載構(gòu)建項(xiàng)目所需的任何JAR,就像Perl的CPAN一樣。這允許Maven的用戶跨項(xiàng)目重用JAR并鼓勵(lì)項(xiàng)目之間的通信,以確保處理向后兼容性問題。
  • Maven安裝和配置

    配置Maven環(huán)境

    注意,安裝Maven前要首先配置jdk環(huán)境變量,否則運(yùn)行mvn -v查看Maven版本時(shí)會(huì)出現(xiàn)以下提示

  • 下載apache-maven文件(最新版本:3.6.3):
    下載地址:http://maven.apache.org/download.cgi
  • 解壓文件至文件夾
    注意:文件路徑不要含有中文字符及空格
  • 配置環(huán)境變量
    • Windows環(huán)境

      • 新建:MAVEN_HOME(M2_HOME) :
        D:\server\maven\apache-maven-3.5.0 (自己的文件解壓路徑)

      • 修改path:在path最后面添加:
        ;%MAVEN_HOME%\bin

      • 打開命令提示符,輸入: mvn -v,顯示以下信息表示配置成功

    • 基于Unix的操作系統(tǒng)(Linux和Mac OS),以Mac OS為例。

      • 打開終端,輸入:?vim ~/.bash_profile,按Enter

      • 添加以下代碼并退出vi:
        export M2_HOME=/usr/local/apache-maven-3.5.4(解壓后的文件夾路徑)
        export PATH=$PATH:$M2_HOME/bin
        (退出vi:1.按Shift + ;2.輸入:wq 3.按Enter)

      • 輸入命令:?source ~/.bash_profile,按Enter

      • 輸入命令:mvn -v?顯示以下信息表示配置成功

    配置Maven本地倉庫、鏡像倉庫

  • 根據(jù)個(gè)人情況,新建倉庫文件夾;

  • 配置Maven\conf\文件夾中setting.xml文件

    • 配置本地倉庫地址(根據(jù)自己的情況選擇路徑)

    <localRepository>D:\Apps\Maven\repository</localRepository>

    • 配置鏡像
      在?<settings><mirror></mirrors></settings>?之間插入以下代碼(阿里云鏡像)

    <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>*</mirrorOf> </mirror>

  • 了解更詳細(xì)的setting.xml的配置,可以訪問以下網(wǎng)址:http://www.cnblogs.com/yangxia-test/p/4409736.html

  • IDEA中配置及使用Maven

    IDEA配置Maven

    IDEA自帶了apache maven,默認(rèn)使用的是內(nèi)置maven,所以我們可以配置全局setting,來調(diào)整一下配置。

    在IDEA中使用Maven創(chuàng)建項(xiàng)目

  • 依照以下步驟創(chuàng)建項(xiàng)目
  • 第一次創(chuàng)建項(xiàng)目需要等待一段時(shí)間,Maven需要下載jar包

    目錄:

    還需要自己創(chuàng)建一些文件夾,創(chuàng)建完成后結(jié)構(gòu)如下


    java:存放源代碼
    com.chixing:存放個(gè)模塊
    resources:存放資源文件
    test/java:存放測試代碼
    test/resources:存放測試所需資源文件

    通用目錄結(jié)構(gòu)

    |-- pom.xml |-- src | |-- main | | `-- java | | `-- resources | | `-- filters | `-- test | | `-- java | | `-- resources | | `-- filters | `-- it | `-- assembly | `-- site `-- LICENSE.txt `-- NOTICE.txt `-- README.txt

    src/main/java 項(xiàng)目的源代碼所在的目錄
    src/main/resources 項(xiàng)目的資源文件所在的目錄
    src/main/filters 項(xiàng)目的資源過濾文件所在的目錄
    src/main/webapp 如果是web項(xiàng)目,則該目錄是web應(yīng)用源代碼所在的目錄,比如html文件和web.xml等都在該目錄下。
    src/test/java 測試代碼所在的目錄
    src/test/resources 測試相關(guān)的資源文件所在的目錄
    src/test/filters 測試相關(guān)的資源過濾文件所在的目錄
    上面的目錄結(jié)構(gòu),我們接觸的比較多,而下面的這些目錄結(jié)構(gòu),用的相對(duì)不是很多:

    src/it 集成測試代碼所在的目錄,主要是供別的插件使用的。
    src/assembly 組件(Assembly)描述符所在的目錄
    src/site 站點(diǎn)文件
    LICENSE.txt 項(xiàng)目的許可文件
    NOTICE.txt 該項(xiàng)目依賴的庫的注意事項(xiàng)
    README.txt 項(xiàng)目的readme文件

    • 在根目錄下,主要有兩個(gè)目錄,分別是src和target目錄,除此之外,還會(huì)有一些版本控制系統(tǒng)的元數(shù)據(jù)文件,包括git的.gitignore或者svn的.svn。

    修改設(shè)置:


    Maven常見命令

    命令含義
    mvn archetype:create創(chuàng)建Maven項(xiàng)目
    mvn compile編譯源代碼
    mvn test運(yùn)行應(yīng)用程序中的單元測試
    mvn install在本地Respository中安裝jar
    mvn clean清除項(xiàng)目目錄中的生成結(jié)果
    mvn site生成項(xiàng)目相關(guān)信息的網(wǎng)站
    mvn package根據(jù)項(xiàng)目生成jar

    Maven生命周期

    Maven有三套相互獨(dú)立的生命周期,請(qǐng)注意這里說的是“三套”,而且“相互獨(dú)立”的。這三套生命周期分別是:

    • Clean Lifecycle 在進(jìn)行真正的構(gòu)建之前進(jìn)行一些清理工作。
    • Default Lifecycle 構(gòu)建的核心部分,編譯,測試,打包,部署等等。
    • Site Lifecycle 生成項(xiàng)目報(bào)告,站點(diǎn),發(fā)布站點(diǎn)。

    總結(jié)

    以上是生活随笔為你收集整理的Maven的简单配置说明的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。