Maven 教程

本教程已為初學者準備,以幫助他們了解Maven工具的基本功能。完成本教程后,您會發(fā)現(xiàn)自己在使用Apache Maven方面具有中等水平的專業(yè)知識,從這里您可以進入更高的層次。

Maven 翻譯為"專家"、"內(nèi)行",是 Apache 下的一個純 Java 開發(fā)的開源項目?;陧椖繉ο竽P停s寫:POM)概念,Maven利用一個中央信息片斷能管理一個項目的構(gòu)建、報告和文檔等步驟。

Maven 是一個項目管理工具,可以對 Java 項目進行構(gòu)建、依賴管理。

Maven 也可被用于構(gòu)建和管理各種項目,例如 C#,Ruby,Scala 和其他語言編寫的項目。Maven 曾是 Jakarta 項目的子項目,現(xiàn)為由 Apache 軟件基金會主持的獨立 Apache 項目。

閱讀本教程前,您需要了解的知識

本教程主要針對初學者,幫助他們學習 Maven 工具的基本功能。完成本教程的學習后你的 Apache Maven 的專業(yè)知識將達到中等水平,隨后你可以學習更高級的知識了。

閱讀本教程,您需要有以下基礎(chǔ):Java 基礎(chǔ)

Maven 功能

Maven 能夠幫助開發(fā)者完成以下工作:

  • 構(gòu)建

  • 文檔生成

  • 報告

  • 依賴

  • SCMs

  • 發(fā)布

  • 分發(fā)

  • 郵件列表

約定配置

Maven 提倡使用一個共同的標準目錄結(jié)構(gòu),Maven 使用約定優(yōu)于配置的原則,大家盡可能的遵守這樣的目錄結(jié)構(gòu)。如下所示:

目錄目的
${basedir}存放pom.xml和所有的子目錄
${basedir}/src/main/java項目的java源代碼
${basedir}/src/main/resources項目的資源,比如說property文件,springmvc.xml
${basedir}/src/test/java項目的測試類,比如說Junit代碼
${basedir}/src/test/resources測試用的資源
${basedir}/src/main/webapp/WEB-INFweb應(yīng)用文件目錄,web項目的信息,比如存放web.xml、本地圖片、jsp視圖頁面
${basedir}/target打包輸出目錄
${basedir}/target/classes編譯輸出目錄
${basedir}/target/test-classes測試編譯輸出目錄
Test.javaMaven只會自動運行符合該命名規(guī)則的測試類
~/.m2/repositoryMaven默認的本地倉庫目錄位置

Maven 特點

  • 項目設(shè)置遵循統(tǒng)一的規(guī)則。

  • 任意工程中共享。

  • 依賴管理包括自動更新。

  • 一個龐大且不斷增長的庫。

  • 可擴展,能夠輕松編寫 Java 或腳本語言的插件。

  • 只需很少或不需要額外配置即可即時訪問新功能。

  • 基于模型的構(gòu)建 ? Maven能夠?qū)⑷我鈹?shù)量的項目構(gòu)建到預定義的輸出類型中,如 JAR,WAR 或基于項目元數(shù)據(jù)的分發(fā),而不需要在大多數(shù)情況下執(zhí)行任何腳本。

  • 項目信息的一致性站點 ? 使用與構(gòu)建過程相同的元數(shù)據(jù),Maven 能夠生成一個網(wǎng)站或PDF,包括您要添加的任何文檔,并添加到關(guān)于項目開發(fā)狀態(tài)的標準報告中。

  • 發(fā)布管理和發(fā)布單獨的輸出 ? Maven 將不需要額外的配置,就可以與源代碼管理系統(tǒng)(如 Subversion 或 Git)集成,并可以基于某個標簽管理項目的發(fā)布。它也可以將其發(fā)布到分發(fā)位置供其他項目使用。Maven 能夠發(fā)布單獨的輸出,如 JAR,包含其他依賴和文檔的歸檔,或者作為源代碼發(fā)布。

  • 向后兼容性 ?  您可以很輕松的從舊版本 Maven 的多個模塊移植到 Maven 3 中。

  • 子項目使用父項目依賴時,正常情況子項目應(yīng)該繼承父項目依賴,無需使用版本號,

  • 并行構(gòu)建 ? 編譯的速度能普遍提高20 - 50 %。

  • 更好的錯誤報告 ? Maven 改進了錯誤報告,它為您提供了 Maven wiki 頁面的鏈接,您可以點擊鏈接查看錯誤的完整描述。

    Apache Maven是一個軟件項目管理和理解工具?;陧椖繉ο竽P?POM)的概念,Maven可以從中央信息管理項目的構(gòu)建,報告和文檔。使用maven,我們可以構(gòu)建和管理任何基于Java的項目。本教程將教您如何在使用Java進行任何項目開發(fā)的日常工作中使用Maven。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清