乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      maven(1)

       丹楓無跡 2021-04-29

      本篇知識來源于大佬博客以及菜鳥教程。

      1.簡介

      Maven項目對象模型(POM),可以通過一小段描述信息來管理項目的構(gòu)建,報告和文檔項目管理工具軟件。(它是一個強大的Java項目構(gòu)建工具,基于POM(項目對象模型)文件,可用于項目構(gòu)建、依賴模塊管理和Javadoc生成等。)

      2.構(gòu)建工具

      構(gòu)建工具是軟件構(gòu)建過程自動化的一種工具。一個軟件項目的構(gòu)建通常包含以下幾部分:

      • 生成源代碼(如果項目使用了自動生成部分源代碼)
      • 從源代碼生成文檔(如javadoc)
      • 編譯源代碼
      • 將編譯好的代碼打包到ZIP包或JAR包中
      • 把打包好的文件部署到服務(wù)器或存儲庫

      某些軟件項目可能還包含其他特殊構(gòu)建任務(wù),這些任務(wù)都可以添加到maven的構(gòu)建過程中自動化執(zhí)行。

      構(gòu)建過程自動化的好處是,避免出錯,效率更高,人工執(zhí)行構(gòu)建過程比較慢且容易出錯。

      3.工作原理

      3.1 Maven 讀取 pom.xml

      maven根據(jù)pom.xml文件中的配置來執(zhí)行命令。

      3.2 下載依賴jar包到本地庫(Repository)

      pom.xml文件中包含了依賴項的配置,依賴項是項目使用的第三方庫,即外部的jar文件,如果本地庫沒有,那么Maven將從中央庫下載依賴項,并存放在本地庫中。

      3.3 執(zhí)行構(gòu)建過程/階段/目標(biāo)

      項目的構(gòu)建通常包含數(shù)個相互獨立的任務(wù),可以獨立執(zhí)行,如生成文檔,構(gòu)建jar包等。單個任務(wù)的執(zhí)行過程被稱為一個構(gòu)建生命周期,構(gòu)建生命周期由一系列的構(gòu)建階段組成,每個階段包含一系列的構(gòu)建目標(biāo)。

      3.4 執(zhí)行插件

      插件是構(gòu)建目標(biāo)的集合,也稱為MOJO (Maven Old Java Object)。

      Maven 生命周期的每一個階段的具體實現(xiàn)都是由 Maven 插件實現(xiàn)的。

      Maven 實際上是一個依賴插件執(zhí)行的框架,每個任務(wù)實際上是由插件完成。Maven 插件通常被用來:

      • 創(chuàng)建 jar 文件
      • 創(chuàng)建 war 文件
      • 編譯代碼文件
      • 代碼單元測試
      • 創(chuàng)建工程文檔
      • 創(chuàng)建工程報告

      3.5 構(gòu)建profile

      可以構(gòu)建項目的不同版本。

      4.POM

      4.1 概念

      POM( Project Object Model,項目對象模型 ) 是 Maven 工程的基本工作單元,是一個XML文件,包含了項目的基本信息,用于描述項目如何構(gòu)建,聲明項目依賴,等等。

      執(zhí)行任務(wù)或目標(biāo)時,Maven 會在當(dāng)前目錄中查找 POM。它讀取 POM,獲取所需的配置信息,然后執(zhí)行目標(biāo)。

      POM 中可以指定以下配置:

      • 項目依賴
      • 插件
      • 執(zhí)行目標(biāo)
      • 項目構(gòu)建 profile
      • 項目版本
      • 項目開發(fā)者列表
      • 相關(guān)郵件列表信息

      4.2 標(biāo)簽

      節(jié)點 描述
      project 工程的根標(biāo)簽
      modelVersion 指定模型版本,應(yīng)為4.0
      groupld 這是工程組的標(biāo)識。它在一個組織或者項目中通常是唯一的。
      artifactld 這是工程的標(biāo)識。它通常是工程的名稱。
      version 這是工程的版本號。

      4.3 pom繼承

      父(Super)POM是 Maven 默認(rèn)的 POM。所有的 POM 都繼承自一個父 POM(無論是否顯式定義了這個父 POM)。父 POM 包含了一些可以被繼承的默認(rèn)設(shè)置。因此,當(dāng) Maven 發(fā)現(xiàn)需要下載 POM 中的 依賴時,它會到 Super POM 中配置的默認(rèn)倉庫 http://repo1./maven2 去下載。

      <parent>
              <groupId></groupId>
              <artifactId></artifactId>
              <version></version>
              <relativePath></relativePath>
          </parent>
      

      可用上述結(jié)構(gòu)顯式地繼承另一個POM文件。

      5.存儲庫

      • 在 Maven 的術(shù)語中,倉庫是一個位置(place)。

        Maven 倉庫是項目中依賴的第三方庫,這個庫所在的位置叫做倉庫。

        在 Maven 中,任何一個依賴、插件或者項目構(gòu)建的輸出,都可以稱之為構(gòu)件。

        Maven 倉庫能幫助我們管理構(gòu)件(主要是JAR),它就是放置所有JAR文件(WAR,ZIP,POM等等)的地方。

        Maven 倉庫有三種類型:

        • 本地(local)
        • 中央(central)
        • 遠(yuǎn)程(remote)

      Maven搜索依賴項時,會按照:本地庫、中央庫和遠(yuǎn)程庫的順序進(jìn)行。

      本地庫可以通過修改settings.xml(apache-maven-3.6.3\conf\)文件來更改maven本地存儲庫的位置。

      <settings xmlns="http://maven./SETTINGS/1.0.0"
                xmlns:xsi="http://www./2001/XMLSchema-instance"
                xsi:schemaLocation="http://maven./SETTINGS/1.0.0 http://maven./xsd/settings-1.0.0.xsd">
                <localRepository>D:\Java\maven-repository</localRepository>
        <!-- localRepository
      

      localRepository 后方是我們想要修改地本地庫存儲的位置。

      6.項目結(jié)構(gòu)

      |--name
      
      ?|--pom.xml   Project Object Model 項目對象模型,Maven 的核心配置文件,與構(gòu)建過程相關(guān)的一切設(shè)置都在這個文件中進(jìn)行配置。
      
      ?|--src
      
      ?|--main 存放主程序
      
      ?|--java存放java源文件
      
      ?|--resources   存放框架或其他工具的配置文件
      
      ?|--webapp存放關(guān)于網(wǎng)頁的數(shù)據(jù)
      
      ?|--index.jsp默認(rèn)訪問
      
      ?|--static
      
      ?|--default存放前端要用的框架,圖片,css,js等文件
      
      ?|--WEB-INF
      
      ?|--web.xml配置文件
      
      ?|--page存放前端頁面,每個板塊各為一個文件夾
      
      ?|--test存放測試程序
      
      ?|--java存放測試java源文件
      
      ?|--resources   存放測試框架或其他工具的配置文件
      
      

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多