maven tutorial

11
Maven Tutorial Hsuan-Ju Lin

Upload: hsuan-ju-lin

Post on 09-Jan-2017

29 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Maven tutorial

Maven TutorialHsuan-Ju Lin

Page 2: Maven tutorial

Maven的三個好用之處• Phrase LifeCycle & Maven Plugin•Dependency & local repository• Archetype for template project

Page 3: Maven tutorial

Maven profile in pom.xml• <groupId>:確認maven專案的公司或組織名,儲存在

repository 時,會用 groupId做為資料夾的層次結構• <artifactId>:確定maven專案名稱 • <version>:確定maven專案的版本 

Page 4: Maven tutorial

Maven Plugin for building• 和 Ant 功能相同,都是管理 java 檔的建置與發布,但 Ant 要自己定義…

1. 專案架構2. goal 與 java 命令的對應• 優點:自由度高

• Maven:1. 有固定的檔案放置方式,沒像 Ant 那樣,能自由設計檔案的擺放方式2. 但相對的, Maven 將專案需要的 phrase(Test, install, deploy…) 與 java 命令的對應都寫好了!我們只需要:

1. 在 pom.xml 使用 maven-plugin ,指定想要執行的 phrase ( 選擇性,沒設定會使用maven 預設 )

2. 調整 phrase 的設定 ( 選擇性,沒設定會使用 maven 預設 )3. 執行 Goal , Ex. mvn install goal

Page 5: Maven tutorial

Maven Plugin & project phrase•專案的每個階段 (phrase),所需要的Maven plugin大部份都有了!• https://maven.apache.org/plugins/index.html

Page 6: Maven tutorial

Maven Plugin Use• https://maven.apache.org/plugins/index.html

點擊左邊欄的 example查看教學

Page 7: Maven tutorial

Maven plug-in LifeCycle• 專案生命週期• phrase 是有順序性的• Ex. 當執行 mvn test 時,maven 會將validate, compile的階段先跑過。

Page 8: Maven tutorial

local repository• Maven默認將 local repository建立在~/.m2/repository ,可以到 maven conf 文件修改設定。• Maven會在本地端建立 local repository, local repository作用 :1. 存放第三方依賴 (jar檔 ),Maven會根據 pom.xml所標注的包名下載 jar檔和其相依檔到 local repository,以後就從

local repository尋找。2. 存放第三方 archetype3. 存放公司內部自己的釋出的 jar檔或 archetype• 開發者可以用 mvn install 將自己專案的  jar 檔儲存到 local

repository• 開發者可以用以下方式將自己專案的 archetype儲存到 local

repository1. mvn clean archetype:create-from-project2. 到 target/generated-sources/archetype資料夾3. mvn clean install 儲存到 local repository

Page 9: Maven tutorial

Maven dependencies download

尋找 jar/ archetype

尋找 jar/ archetype

Page 10: Maven tutorial

What is archetype?• Archetype像是專案的模板,包含建立專案後要做的一切基本文件設定和套件依賴準備等…•建立 Archetype的優點:1. 公司將自己客製化的模板儲存在 local repository,當員工要建立新專案時,直接用此模板 create一個新專案即可,不需要再自己更動設定檔。2. 將常用的專案設定創建成 archetype並儲存於 local repository,節省時間一直做同一件事。

Page 11: Maven tutorial

創建 /使用 archetype:• 創建

• 開發者可以用以下方式將自己專案的 archetype儲存到 local repository1. mvn clean archetype:create-from-project2. 到 target/generated-sources/archetype資料夾3. mvn clean install 儲存到 local repository

• 使用• mvn archetype:generate –DgroupId=${自訂 group} –DartifactId=${自訂

projectName} – DarchetypeGroupId=${archetypeGroupId}– DarchetypeArtifactId=${archetypeArtifactId} – DarchetypeVersion=${archetypeVersion} – DinteractiveMode=false (不要互動模式 )

• 查找 remote maven repository的 archetype• https://maven.apache.org/archetypes/