maven座標

maven座標

<dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jdbc</artifactId> <version>8.5.23</version> </dependency> 
  • grouId:定義當前Maven項目隸屬的實際項目。首先,Maven項目和實際項目不必定是一對一的關係。例如SpringFramwork這一個實際項目,其對應的Maven項目會不少,如 spring-core,spring-context等。其次,groupId不該該對應項目隸屬的組織或者公司,由於一個組織下會有不少實際項目。若定義到組織級別,則artifactId只能定義到Maven項目(模塊),會使實際項目這層難以定義。 最後它的表示方法與包名相似。一般與域名反向一一對應。域分爲org、com、cn等,org爲非盈利組織,com爲商業組織。例如 org.apache.tomcat 。
  • org.apache,表示apache公司創建的一個非盈利性組織,tomcat表示Tomcat這一實際項目,該groupId與域名tomcat.apache.org對應。
  • artifactId:該元素定義實際項目的一個Maven項目(模塊),推薦的作法是使用實際項目名稱做爲artifactId的前綴,且都是小寫。例如上例中的artifactId是tomcat-jdbc,使用了實際項目tomcat爲前綴。
  • version:定義Maven項目當前所處的版本。
  • packaging:定義Maven項目的打包方式。
  • classiffier:該元素用來幫助定義構建輸出的一些附屬構件。

注:grouId,artifactId,version ,這三元素是必須定義的,packaging,可選定義,默認jar,classiffier,不能直接定義。spring


通常依照Maven座標的定義,包名最好也是以Maven座標爲前綴。 例如。我本身建的項目爲 groupId:com.gree.testcenter,artifactId:testcenter-kafkatest,說明項目名稱就是testcenter-kafkatest 包結構就是 com.gree.testcenter.testcenter-kafkatestapache

相關文章
相關標籤/搜索