maven是一種用來管理java項目的工具,但不是那種用來管理資源規劃和調度的工具,它處理的是管理一個項目所涉及的各類任務,如編譯、測試、打包、文檔以及分發。java
maven包括如下的幾個部分:maven
1.一組用於處理依賴管理、目錄結構以及構建工做流的約定。工具
2.一個用於項目配置的XML Schema:項目對象模型,簡稱POM。測試
3.一個委託外部組件來執行項目任務的插件結構。google
GAV座標標識了包含全部組件的jar.net
G:groupId是項目或者項目組的全局的惟一標識符。這一般是java源代碼中使用的全限定的java包名,例如io.netty、com.google插件
A:artifactId用於標識和某個groupId相關的不一樣的構件,如netty-allnetty
type是指和項目相關的主要構件的類型,默認值是jar對象
V:version標識了構件的版本資源
classifier用於區分屬於相同的POM可是卻被以不一樣的方式構建的構件如jdk17