SpringCloud如何搭建一個多模塊項目
在spring cloud系列章節(jié)中,本來已經(jīng)寫了幾個章節(jié)了,但是自己看起來有些東西寫得比較雜,所以重構了一下springcloud的章節(jié)內(nèi)容,新寫了本章節(jié),先教大家在工作中如何搭建一個多模塊的springcloud項目。
本章及后面章節(jié),我們使用的開發(fā)環(huán)境是 spring tool suite (sts) + maven (當然你也可以使用IDEA + Gradle,目前使用的公司也很多)。
一、新建一個父maven project模塊
File->new->other->maven->maven project
記得勾選紅框,我們僅僅只是需要該項目的pom.xml文件


如果生成后,有src文件,我們刪除該文件,只保留pom.xml文件

修改pom.xml文件內(nèi)容
<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>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.haly</groupId>
<artifactId>springcloud</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>springcloud</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring-cloud.version>Greenwich.SR1</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
注意: 很多同學在搭建項目的過程中,引入依賴時,pom文件總是報錯,這一般是springboot和springcloud的版本不一致造成。
這個系列所有章節(jié),我們使用的版本為 springboot :2.1.4.RELEASE springcloud:Greenwich.SR1
我們新建這個父工程后,發(fā)現(xiàn)它其實只有一個pom文件,沒有什么業(yè)務功能,但是工作中我們都會新建一個這樣的項目目錄,它的作用如下
1. 工作中,我們整個項目的名稱就是這個maven項目的名稱,在svn中拉取項目下,只要拉這個主工程的分支就行了。
2.它的pom文件會定義為父pom,后續(xù)的module工程可以繼承該pom,所以很多module工程共用的配置,都可以放到這里。
二、新建一個springcloud-eureka-server子模塊
選擇主項目springcloud,右鍵->Maven->new maven module project



生成項目目錄結構如下:

注意:有些同學新建子項目完成后,項目的展示都是并排著,沒有展示出父子關系,需要調(diào)整一個展示形式,才會出現(xiàn)上面的項目結構。
點擊上圖標紅的地方 -> projects Presentation - > Hierarchical
如果生成的springcloud-eureka-server模塊沒有resources目錄
springcloud-eureka-server上右鍵點擊項目-> new->Source Folder

三、新建一個springcloud-eureka-client子模塊
參考新建springcloud-eureka-server模塊的步驟,新增一個springcloud-eureka-client模塊
生成的項目結構如下:

這時,我們?nèi)ジ疙椖縮pringcloud中打開pom.xml文件,會發(fā)現(xiàn)自動增加了新建子模塊的引入
<modules> <module>springcloud-eureka-server</module> <module>springcloud-eureka-client</module> </modules>
四、總結:
通過上面的步驟,我們已經(jīng)搭建好了一個多模塊的springcloud項目,但是這僅僅只是一個項目架構,如果需要運行起來,我們還需要做如下三步
1. 修改子模塊的pom.xml文件,增加對應模塊功能需要的依賴包
2. 在src/main/resources目錄下,新增application.properties文件,配置項目的配置項
3. 在src/main/java目錄的com.haly包下,新增對應模塊的啟動類
如何運行多模塊springcloud項目,請看下一章節(jié):一起來學Spring Cloud | 第二章:服務注冊和發(fā)現(xiàn)組件 (Eureka)
到此這篇關于SpringCloud如何搭建一個多模塊項目的文章就介紹到這了,更多相關SpringCloud 多模塊項目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
mybatisplus?selectOne查詢,有數(shù)據(jù),但返回為null問題
這篇文章主要介紹了mybatisplus?selectOne查詢,有數(shù)據(jù),但返回為null問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11
出現(xiàn)java.util.ConcurrentModificationException 問題及解決辦法
這篇文章主要介紹了出現(xiàn)java.util.ConcurrentModificationException 問題及解決辦法的相關資料,需要的朋友可以參考下2017-02-02
SpringBoot中使用異步調(diào)度程序的高級方法
本文主要介紹了SpringBoot中使用異步調(diào)度程序的高級方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-07-07
springboot項目中mapper.xml文件找不到的三種解決方案
這篇文章主要介紹了springboot項目中mapper.xml文件找不到的三種解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
SpringCloud升級2020.0.x版之OpenFeign簡介與使用實現(xiàn)思路
在微服務系統(tǒng)中,我們經(jīng)常會進行 RPC 調(diào)用。在 Spring Cloud 體系中,RPC 調(diào)用一般就是 HTTP 協(xié)議的調(diào)用。對于每次調(diào)用,都要經(jīng)過一系列詳細步驟,接下來通過本文給大家介紹SpringCloud OpenFeign簡介與使用,感興趣的朋友一起看看吧2021-10-10
JavaWeb 文件的上傳和下載功能簡單實現(xiàn)代碼
這篇文章主要介紹了JavaWeb 文件的上傳和下載功能簡單實現(xiàn)代碼,需要的朋友可以參考下2017-04-04
java實現(xiàn)兩張圖片2D翻轉(zhuǎn)動畫效果
這篇文章主要為大家詳細介紹了java實現(xiàn)兩張圖片2D翻轉(zhuǎn)動畫效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-08-08
Java如何優(yōu)雅地關閉資源try-with-resource及其異常抑制
這篇文章主要介紹了Java如何優(yōu)雅地關閉資源try-with-resource及其異常抑制,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02

