Apache Maven Repository & Coordinates概念

Apache Maven基礎概念

前言

使用Apache Maven其實有幾個較為核心的概念,想深入了解Apache Maven的使用,了解這些觀念是非常有幫助的,基本的Apache Maven概念可以分為Repository、Coordinates以及Dependencies,因 Dependencies 在Apache Maven概念中所需要了解的事務較多,因此楊藝在後續文章在進行相關介紹,此篇專注於Repository & Coordinates概念的說明。

Repository

相當於存放資源的倉庫,存放各種Java的套件以及Source Code,一般可分為以下三種。

  1. Local Repository: 優先尋找相關依賴資源,若有找到則直接使用。
  2. Central Repository: 若Local Repository查找不到,則至Central Repository查找。
  3. 若有架設Internal Repository,查找順序為Local Repository->Internal Repository->Central Repository。

Coordinates

Repository裡存放了許多套件,為了要在Repository尋找到所需的套件,因此定義了Coordinates,基本的Coordinates的組成如下。

  1. groupId: 定義當前Apache Maven專案所屬組織。
  2. artifactId: 定義實際專案中的模組名稱。
  3. version: 定義當前專案的版本號。
  4. packaging: 定義專案的打包方式(pom/jar/war,預設為 jar)

一般會將groupId、artifactId以及version簡稱為GAV。

要尋找Coordinates,可至Maven Repository網站查找。