1. 程式人生 > 實用技巧 >06 Maven拆分、聚合專案

06 Maven拆分、聚合專案

maven拆分、聚合

一、概念

maven拆分思想:把一個完整的專案,分成不同的獨立模組,這些模組都有各自獨立的座標。

maven聚合思想:那個地方需要使用其中某個模組,就直接引用該模組的座標即可。可以拆分零散的模組聚合到一起編寫一個完整的專案

為什麼要拆分、聚合?

因為把可重用的程式碼進行建立一個專案,而不是一個重複的程式碼分佈在各處,導致後期更改其中的程式碼到處找很麻煩。

二、案例說明

2.1、建立父子工程專案

2.2、將maven座標放置到父專案的pom檔案中

這個是主專案的pom檔案

<?xml version="1.0" encoding="UTF-8"?>
<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>
    <groupId>com.itcast</groupId>
    <artifactId>day39_maven_parent</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    <modules>
        <module>day39_maven_dao</module>
        <module>day39_maven_service</module>
        <module>day39_maven_web</module>
    </modules>
    <!--座標省略-->
</project>

2.3、分別將專案之間的座標新增到各專案中

將dao副專案座標新增到servlet副專案中

<dependencies>
    <dependency>
        <groupId>com.itcast</groupId>
        <artifactId>day39_maven_dao</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

將servlet副專案座標新增到web副專案中

<dependencies>
    <dependency>
        <groupId>com.itcast</groupId>
        <artifactId>day39_maven_service</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

這樣專案之間就可以形成依賴關聯了

2.4、執行專案

2.4.1、第一種方式

直接點選主專案的maven檔案,因為在專案中新增的tomcat7依賴,所以在這裡啟動專案是可以的

2.4.2、第二種方式

通過開發工具配置的本地伺服器啟動專案,不過這裡要選擇web副專案

2.4.3、第三種方式

使用主專案的打包,並在web副專案從主專案中依賴的tomcat來執行

如果不適用上述操作,則會出現載入不到其他專案中的配置檔案出現報錯。