如何使用maven 進行協作開發(多人開發)呢?
(1)項目子產品化,一個項目應該根據功能不同劃分為多個子產品,作用一:配置設定任務好配置設定;作用二:便于維護.
(2)項目組成員修改的子產品能馬上可見(被其他成員友善地得到)
使用maven project和maven module
以一個簡單的商城系統為例
建立商城的dao,又分為supermarket,goods(商品),user.項目結構如下:

實際上隻有一個項目,這個項目下面包含三個maven module,分别是:supermarket,goods,user.
總共有4個pom.
這樣就可以配置設定給三個開發人員進行開發了,分别負責三個 maven module.
關于配置,有如下幾點說明:
(1)在父maven項目的pom中要包含如下配置
<modules>
<module>supermarket</module>
<module>goods</module>
<module>user</module>
</modules>
(2)子子產品可以不指定版本号,若不指定,則版本号與父項目相同
子子產品的pom.xml:
<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelversion>4.0.0</modelversion>
<parent>
<groupid>com.kunlunsoft</groupid>
<artifactid>dao_shop</artifactid>
<version>0.0.1-snapshot</version>
</parent>
<artifactid>supermarket</artifactid>
<version>1.0.2-snapshot</version>
<name>dao-supermarket</name>
</project>
說明:以上的子子產品中指定了version為1.0.2-snapshot,若不指定它的version就內建fu項目的.
(3)子項目的依賴的版本都在父類中,例如
user子產品的pom.xml如下:
<artifactid>user</artifactid>
<name>dao-user</name>
<dependencies>
<dependency>
<groupid>com.kunlunsoft</groupid>
<artifactid>supermarket</artifactid>
</dependency>
</dependencies>
我們看到依賴的supermarket沒有寫版本号,因為版本号已經在父類中聲明了.
(4)開發時,所有的成員一旦修改代碼,一定要在送出svn的同時要部署到maven伺服器(我們使用的是nexus)
相關資料:
nexus官網:http://www.sonatype.org/nexus/
界面如下: