SpringBoot創建多模塊項目

一、簡介

SpringBoot是一個高效的工具,它能夠快速便捷地創建一個整體完整的項目,而且能夠與各種其他的框架集成。對於一個大型的項目來說,一個整體完整的項目可能並不是最好的方案。為了解決這個問題,我們可以採用多模塊的方式進行項目開發,這樣既能夠實現獨立部署,也能夠進一步提高開發效率。

二、創建多模塊項目

在創建多模塊項目之前,需要明確一個概念,就是模塊(module)。模塊是指一組代碼和資源的集合,它可以單獨編譯、測試、打包和部署。在Java中,模塊通常使用Maven或Gradle管理。在SpringBoot中,我們也可以使用Maven或Gradle來維護多模塊項目。接下來,我們一步一步進行多模塊項目的創建。

1. 創建父項目

在創建多模塊項目的時候,通常需要先創建一個父項目(pom項目),這個父項目的作用是維護所有子模塊的公共依賴,比如SpringBoot版本號、資料庫連接池等等。創建父項目的方式略有不同,因為這個項目沒有實際功能,僅僅是為了維護所有子模塊的公共依賴,所以代碼極簡。

<?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">

    <groupId>org.example</groupId>
    <artifactId>parent</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

	<modules>
		<module>child1</module>
		<module>child2</module>
	</modules>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-parent</artifactId>
			<version>2.4.4</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>

</project>

2. 創建子模塊

在創建子模塊之前,需要再次強調一下,每個子模塊都是一個獨立、可編譯、可測試、可打包、可部署的Maven項目,與其他模塊相互獨立。這裡我們以兩個子模塊為例,分別命名為child1和child2。在子模塊中,我們需要維護自己的業務邏輯和依賴,而且需要關注父模塊是否繼承父模塊相應的依賴。

子模塊1:child1

在child1的目錄下創建一個Maven項目,名字為child1,並在pom.xml中添加如下代碼:

<?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">

    <parent>
        <groupId>org.example</groupId>
        <artifactId>parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <groupId>org.example</groupId>
    <artifactId>child1</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>

</project>

子模塊2:child2

同理,在child2的目錄下創建一個Maven項目,名字為child2,並在pom.xml中添加如下代碼:

<?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">

    <parent>
        <groupId>org.example</groupId>
        <artifactId>parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <groupId>org.example</groupId>
    <artifactId>child2</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>com.oracle.database.jdbc</groupId>
            <artifactId>ojdbc10</artifactId>
            <version>19.3.0.0</version>
        </dependency>
    </dependencies>

</project>

三、集成子模塊

在創建完父模塊和子模塊後,下一步就是要將所有模塊集成起來。在父模塊的pom.xml中添加子模塊,關鍵代碼如下:

<modules>
    <module>child1</module>
    <module>child2</module>
</modules>

完成後你將會看到一個與父項目名稱相同的頂級文件夾,該文件夾名就是頂級父項目的名稱,這個文件夾存儲著所有子模塊。在此文件夾中打開命令提示符或終端,輸入以下命令:

mvn clean install

完整代碼請參見:https://github.com/xiaomuworld/springboot-multimodule-demo

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/279181.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-20 15:03
下一篇 2024-12-20 15:03

相關推薦

  • 掌握magic-api item.import,為你的項目注入靈魂

    你是否曾經想要導入一個模塊,但卻不知道如何實現?又或者,你是否在使用magic-api時遇到了無法導入的問題?那麼,你來到了正確的地方。在本文中,我們將詳細闡述magic-api的…

    編程 2025-04-29
  • 從ga角度解讀springboot

    springboot作為目前廣受歡迎的Java開發框架,其中的ga機制在整個開發過程中起著至關重要的作用。 一、ga是什麼 ga即Group Artifacts的縮寫,它是Mave…

    編程 2025-04-29
  • 如何將Java項目分成Modules並使用Git進行版本控制

    本文將向您展示如何將Java項目分成模塊,並使用Git對它們進行版本控制。分割Java項目可以使其更容易維護和拓展。Git版本控制還可以讓您跟蹤項目的發展並協作開發。 一、為什麼要…

    編程 2025-04-28
  • GitHub好玩的開源項目

    本文旨在介紹GitHub上一些好玩的開源項目,並提供代碼示例供讀者參考和學習。 一、Emoji列表 GitHub上有一份完整的Emoji列表,它支持各種平台和設備,方便用戶在Git…

    編程 2025-04-28
  • Django框架:從簡介到項目實戰

    本文將從Django的介紹,以及如何搭建Django環境開始,逐步深入到Django模型、視圖、模板、表單,最後通過一個小型項目實戰,進行綜合性的應用,讓讀者獲得更深入的學習。 一…

    編程 2025-04-28
  • IIS部署Python項目

    本文將從多個方面詳細闡述在IIS上如何部署Python項目。包括安裝IIS、安裝Python、配置IIS、編寫和部署Python代碼等內容。 一、安裝IIS和Python 在開始進…

    編程 2025-04-28
  • 如何使用TKE來開發Java項目

    本文將從多個方面詳細闡述如何使用TKE(Theia IDE)來進行Java項目的開發。TKE是一個功能強大的在線集成開發環境,提供了大量的工具和插件,讓開發者可以高效地進行Java…

    編程 2025-04-28
  • Spark開源項目-大數據處理的新星

    Spark是一款開源的大數據分散式計算框架,它能夠高效地處理海量數據,並且具有快速、強大且易於使用的特點。本文將從以下幾個方面闡述Spark的優點、特點及其相關使用技巧。 一、Sp…

    編程 2025-04-27
  • SpringBoot Get方式請求傳參用法介紹

    本文將從以下多個方面對SpringBoot Get方式請求傳參做詳細的闡述,包括URL傳參、路徑傳參、請求頭傳參、請求體傳參等,幫助讀者更加深入地了解Get請求方式下傳參的相關知識…

    編程 2025-04-27
  • 如何解決IDEA創建SpringBoot項目無法連接Spring.io中心

    該問題可能是由於IDEA設置的代理問題,缺乏必要的插件和配置,或網路原因引起的。 一、代理設置 1、在IDEA中進入File->Settings->Appearance…

    編程 2025-04-27

發表回復

登錄後才能評論