Maven中的GroupD和ArtifactID以及專案中的目錄結構
一,Maven座標
Maven在世界上擁有數量非常巨大的構建,也就是平時用的一些jar,war等檔案。如此眾多的元件,就難免會有重名的問題。因此maven引入了座標的概念。maven定義了 一組規則:
世界上任何一個構件都可以使用Maven座標唯一標誌,maven座標的元素包括groupID,artifactId,version,package,classifier。只要在pom.xml檔案中配置好dependency的groupID,artifactId,version,maven就會從倉庫中尋找相應的構建供我們使用。
二,GroupD和ArtifactID
groupId :the unique identifier of the organization or group that created the project
GroupID 是專案組織唯一的識別符號,實際對應JAVA的包的結構,是main目錄裡java的目錄結構。
artifactId :unique base name of the primary artifact being generated by this project
ArtifactID是專案的唯一的識別符號,實際對應專案的名稱,就是專案根目錄的名稱。
三,命名規則
如果要把專案弄到maven本地倉庫中,那專案就必須指定唯一的座標,即指定唯一的GroupD和ArtifactID。
1,建立maven專案:
2,GroupId一般分為多個段,第一段為域,第二段為公司名稱。域又分為org、com、cn等等許多,其中org為非營利組織,com為商業組織。舉個apache公司的tomcat專案例子:這個專案的GroupId
3,ArtifactId 是專案名稱,比如:apache的tomcat專案,再比如我自己的專案testProj。
四,專案路徑
專案建完以後,自動建立如下路徑:
根據專案需求,拓展路徑如下(為了演示,用的另外一個專案,忽視專案名的差異):
其中java資料夾,mark as Sources Root;resources資料夾,marked as Resources Root
如此,則專案中各種檔案的路徑如下:
Users類:com.leon.pojo.Prod, ProdMapper中resultType中引用如下,resultType="com.leon.pojo.Users"
MyBatisUtil類:com.leon.util.MyBatisUtil
mybatis-config.xml:就是專案跟目錄下mybatis-config.xml.在MyBatisUtil中讀取配置檔案,語句如下:InputStream is=Resources.getResourceAsStream("mybatis-config.xml");
ProdMapper.xml:mapper\ProdMapper.xml
由上可知,被mark as Sources Root的目錄,就相當於專案程式碼的根目錄。同樣的,被mark as Resources Root的目錄,就相當於資源根目錄 。