約定的目錄結構對於 Maven 實現自動化構建而言是必不可少的一環,就拿自動編譯來說,Maven 必須能找到 Java 源文件,下一步才能編譯,而編譯之後也必須有一個準確的位置保持編譯得到的字節碼文件。
我們在開發中如果需要讓第三方工具或框架知道我們自己創建的資源在哪,那麼基本上就是兩種方式:
- 通過配置的形式明確告訴它
- 基於第三方工具或框架的約定
Maven 對工程目錄結構的要求就屬於後面的一種。
現在 JavaEE 開發領域普遍認同一個觀點:約定>配置>編碼。意思就是能用配置解決的問題就不編碼,能基於約定的就不進行配置。而 Maven 正是因為指定了特定文件保存的目錄才能夠對我們的 Java 工程進行自動化構建。
Maven講解之 座標
概念
- 在一個平面中使用 x、y 兩個向量可以唯一的確定平面中的一個點。
- 在空間中使用 x、y、z 三個向量可以唯一的確定空間中的一個點。
- Maven座標(GAV)能在Maven 的倉庫中唯一的確定一個 Maven 工程。
- groupid:公司或組織的域名倒序+當前項目名稱
- artifactId:當前項目的模塊名稱
- version:當前模塊的版本
- 一個標準的GAV
- <groupid>mysql/<groupid>
- <artifactid>mysql-connector-java/<artifactid>
- <version>5.1.30/<version>
如何通過座標到倉庫中查找 jar 包
- 將 gav 三個向量連起來
- mysql+mysql-connector-java+5.1.30
- 以連起來的字符串作為目錄結構到倉庫中查找
- mysql/mysql-connector-java/5.1.30/mysql-connector-java-5.1.30.jar
注意:我們自己的 Maven 工程必須執行安裝操作才會進入倉庫。安裝的命令是:mvn install
閱讀更多 java程序員工程師 的文章