一盐碱、初識

一般工程的特點

20180731203204734.png
20180731203111525.png

什么是Maven

  1. Maven是一款服務于Java平臺的自動化共建構建工具
  2. 構建
    通過各種代碼圖片等素材 > 編譯 > 構建
  3. 構建的各個環(huán)節(jié)
    1. 清理 : 將以前的. class文件刪除;
    2. 編譯 : 將.java編譯為.class字節(jié)碼文件;
    3. 測試 : 自動測試,自動調用JUnitl;
    4. 報告 : 測試程序執(zhí)行結果;
    5. 打包 : 動態(tài)Web工程打war包,java工程打為jar包;
    6. 安裝 : Maven特定的概念--將打包的文件復制到"倉庫"中指定的位置;
    7. 部署 : 將動態(tài)Web工程生成的war包復制到Servlet容器的指定目錄下,使其可以運行;

Maven的核心概念

  1. 約定的目錄結構
  2. POM
  3. 坐標
  4. 依賴
  5. 倉庫
  6. 生命周期\插件\目標
  7. 繼承
  8. 聚合

安裝Maven核心程序

1. 下載Maven

maven下載

2. Maven環(huán)境變量配置

  • MAVEN_HOME
    • 解壓后的文件路徑
      例 : C:\Program Files\Java\apache-maven-x.x.x
  • path
    • 在原有的path中添加
      例 : %MAVEN_HOME%\bin\
  • 驗證
    • CMD:mvn -v
      配置成功時,會返回如下(因電腦差異,會有細微區(qū)別)
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: C:\Program Files\Java\apache-maven-3.5.4\bin\..
Java version: 1.8.0_102, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk1.8.0_102\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

Maven工程

創(chuàng)建Maven的目錄

  1. 目錄結構
    1. 根目錄:工程名
    2. src目錄:源碼
    3. pom.xml文件:Maven工程的核心配置
    4. main目錄:存放主程序
    5. test目錄:存放測試程序
    6. java:.java源文件
    7. resources:各種配置文件
  2. 為什么要遵守這樣的約定?
    1. Maven要負責工程的自動化構建,因為要根據(jù)這種約定找文件,才可以編譯;
    2. 也可以自定義,但是要采取這兩種方式:
      1. 以配置的方式明確
        classpath:spring-context.xm;
      2. 或者遵循默認的方式
        log4j.properties
    3. 默認:約定 > 配置 > 編碼 (盡可能的使用默認配置,減少代碼量)

常用的Maven命令

  • 注意:執(zhí)行與構建過程相關的Maven命令,必須進入pom.xml所在的目錄
    與構建過程相關 : 編譯 測試 打包 ...
  • 常用命令 :
    1. mvn clean : 清理
    2. mvn compile : 編譯主程序
    3. mvn test-compile : 編譯測試程序
    4. mvn test : 執(zhí)行測試
    5. mvn package : 打包
    6. mvn install : 安裝
    7. mvn site : 生成站點

關于源碼和倉庫

  1. Maven的核心程序只定義了抽象的生命周期,但是不提供你所需的插件
  2. 當執(zhí)行Maven命令需要某些插件是,Maven核心程序回到本地倉庫中查找
  3. 本地倉庫默認位置 : c:Users\[登陸當前系統(tǒng)的用戶名]\.m2\repository
  4. 如果找不到,它會自動連接外網,到中央倉庫下載;
  5. 失敗時,構建失敗
  6. 修改默認倉庫位置可以到事先準備好的路徑進行加載.
    1. 解壓路徑 : conf\settings.xml
    2. xml中的<localRepository>標簽中
    3. 替換標簽內容為新倉庫的絕對路徑

POM

  • 含義 : Project Object Model
  • pom.xml 對于Maven工程是核心配置文件,與構建過程相關的一切設置都在這個文件中配置;

坐標(J.A.V)

  • 使用下面三個參數(shù)在倉庫中唯一定位一個Maven工程
    1. groupid : 公司或組織域名倒敘+項目名
    2. artifactid : 模塊名
    3. version : 版本

倉庫

  • 本地倉庫
    為當前電腦的所有Maven工程服務
  • 遠程倉庫
  1. 私服 : 局域網的倉庫;
  2. 中央倉庫 : 假設在Internet上,為全世界服務;
  3. 中央倉庫鏡像 : 為了減輕中央倉庫的壓力;
  • 倉庫保存的內容
  1. Maven 的插件
  2. 第三方jar包
  3. 自己開發(fā)的Maven工程

依賴

  1. Maven解析依賴信息是會到本地倉庫中查找被依賴的jarbao
    對于我們自己開發(fā)的Maven工程,用使用mvn install 命令安裝后就可以進入倉庫了

    20180731225338624.png

  2. 依賴的范圍


    20180731230249927.jpg
    1. compile

      1. 對主程序是否有效 : 有效
      2. 對測試程序是否有效 : 有效
      3. 是否參與打包 : 參與


        20180731230404279.jpg
    2. test

      1. 對主程序是否有效 : 無效
      2. 對測試程序是否有效 : 有效
      3. 是否參與打包 : 不參與
    3. provided

      1. 對主程序是否有效 : 有效
      2. 對測試程序是否有效 : 有效
      3. 是否參與打包 : 不參與


        20180731230539265.jpg
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末偶宫,一起剝皮案震驚了整個濱河市铭段,隨后出現(xiàn)的幾起案子办素,更是在濱河造成了極大的恐慌玄叠,老刑警劉巖淘正,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件摆马,死亡現(xiàn)場離奇詭異,居然都是意外死亡鸿吆,警方通過查閱死者的電腦和手機囤采,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來惩淳,“玉大人蕉毯,你說我怎么就攤上這事乓搬。” “怎么了代虾?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵进肯,是天一觀的道長。 經常有香客問我棉磨,道長江掩,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任乘瓤,我火速辦了婚禮环形,結果婚禮上,老公的妹妹穿的比我還像新娘衙傀。我一直安慰自己抬吟,他們只是感情好,可當我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布统抬。 她就那樣靜靜地躺著火本,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蓄喇。 梳的紋絲不亂的頭發(fā)上发侵,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天,我揣著相機與錄音妆偏,去河邊找鬼刃鳄。 笑死,一個胖子當著我的面吹牛钱骂,可吹牛的內容都是我干的叔锐。 我是一名探鬼主播,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼见秽,長吁一口氣:“原來是場噩夢啊……” “哼愉烙!你這毒婦竟也來了?” 一聲冷哼從身側響起解取,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤步责,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后禀苦,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蔓肯,經...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年振乏,在試婚紗的時候發(fā)現(xiàn)自己被綠了蔗包。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡慧邮,死狀恐怖调限,靈堂內的尸體忽然破棺而出舟陆,到底是詐尸還是另有隱情,我是刑警寧澤耻矮,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布秦躯,位于F島的核電站,受9級特大地震影響淘钟,放射性物質發(fā)生泄漏宦赠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一米母、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧毡琉,春花似錦铁瞒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至丐谋,卻和暖如春芍碧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背号俐。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工泌豆, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人吏饿。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓踪危,卻偏偏與公主長得像,于是被迫代替她去往敵國和親猪落。 傳聞我的和親對象是個殘疾皇子贞远,可洞房花燭夜當晚...
    茶點故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內容