(一)Java工程化--Maven基礎

Maven 讀做['mevən] 翻譯成中文是"內行,專家"linux

Maven是什麼

  1. 包依賴的前世此生:
    原始的jar包引用--> ant --> maven.
    是一種項目管理工具
  2. Maven優點:
  • convertion over configuration 約定優於配置: 這個原則不只適用於maven, 更是目前大多數框架遵循的原則,如mvc
  • 簡單
  • 易於測試
  • 構建簡單
  • CI(持續集成)
  • 插件豐富

下載和安裝

  1. 下載: http://maven.apache.org/download.cgi
  2. 安裝: 解壓安裝便可
  3. 環境變量配置:
  • windows: 配置path MAVEN_HOME
  • linux: 在 .bash_profile 文件中
  • 運行參數: 定義環境變量MAVEN_OPS
  • 配置settings.xml: settings.xml文件是個空模板,咱們能夠在這個文件進行一些自定義配置. 經常使用的配置如:repo存儲目錄 ;mirror鏡像地址;proxy配置 ;插件 ;私服配置(用戶名密碼等) ;環境
    查找順序:
    查找順序

建立maven項目

  • 項目結構: 遵循約定優於配置原則, 項目包的組織結構以下
    項目結構spring

  • pom.xmlapache

groupId 公司組織id
artifactId 功能命名
version 版本號
packageing 打包方式,默認jar,可修改成maven-project,war
dependancyManagement 最好之出如今父pom中,用於統一版本號,只作聲明依賴,子模塊pom中還須要引用,但不須要制定version.
dependancy
type 默認jar
scope 指定哪一個階段適用,各階段以下:
1. compile 編譯,打包,默認 如spring-core
2. test 測試 如spring-test
3. provided 編譯 如servlet
4. runtime 運行時 如JDBC驅動實現包
5. system 本地一些jar
依賴傳遞
依賴仲裁:(1)最短路徑原則,根據依賴樹就近取最接近的版本;(2)加載順序原則;(3)exclusions 排除包

命令: mvn dependancy:treewindows

Maven生命週期(三個過程)

區分術語:lifecycle/phase/goalbash

生命週期:mvc

  1. clean

包含的phase: pre-clean --> clean --> post-clean框架

  1. default

compile package install deploy ...maven

  1. site

pre-site --> site -->post-site --> site-deployide

A Build Lifecycle is Made Up of Phases 一個構建生命週期是有多個phase組成工具

A Build Phase is Made Up of Plugin Goals 一個構建phase是由多個插件目標goal構成

相關文章
相關標籤/搜索