欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot創(chuàng)建多module項目的實例

 更新時間:2022年02月18日 10:35:16   作者:juny0302  
這篇文章主要介紹了springboot創(chuàng)建多module項目的實例代碼,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

使用springboot創(chuàng)建多module項目,以前也做過多次,一段時間不用又忘了,在這里做個記錄

項目名稱作用說明
demo-root根項目父項目,只用來管理其他module,提供基礎的pom配置
demo-api啟動項目api項目,啟動類放在此項目中
demo-common通用工具只放一些通用代碼、工具類等

項目名稱作用說明demo-root根項目父項目,只用來管理其他module,提供基礎的pom配置demo-api啟動項目api項目,啟動類放在此項目中demo-common通用工具只放一些通用代碼、工具類等

創(chuàng)建項目

創(chuàng)建demo-parent

創(chuàng)建過程一路next即可

項目建好后,刪掉src目錄,因為不需要在根項目中寫代碼

創(chuàng)建demo-api

創(chuàng)建過程跟root項目基本一致,所不同的是,需要右鍵點擊根項目,然后在彈出菜單中選擇new–> module

以后的過程跟root項目一樣,略…

創(chuàng)建demo-common

過程跟demo-api一樣,略…

修改各個項目的pom文件

創(chuàng)建過程很簡單,這一步才是重點

修改demo-root的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 https://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.3.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo-root</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo-root</name>
    <description>Demo project for Spring Boot</description>
    <!-- 配置打包類型,不寫默認是jar,一般來說所有的父級項目的packaging都為pom -->
    <packaging>pom</packaging>
    <!-- 添加管理的包 -->
    <modules>
        <module>demo-api</module>
        <module>demo-common</module>
    </modules>
    <properties>
        <!-- 設置項目編碼 -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!-- maven 插件版本 -->
        <maven.compiler.plugin.version>3.1</maven.compiler.plugin.version>
        <java.version>1.8</java.version>
    </properties>
    <!-- 根據自己的需要添加依賴包,注意:root中添加的依賴包會繼承到root所管理的所有module中 -->
    <dependencies>
        <!-- SpringBoot 核心包 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <!-- SpringBoot Web容器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- SpringBoot 攔截器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>
        <!-- spring-boot-devtools -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional> <!-- 表示依賴不會傳遞 -->
        </dependency>
        <!-- spring security 安全認證 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <!-- SpringBoot 測試 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- redis 緩存操作 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
    </dependencies>
<!--    <build>-->
<!--        <plugins>-->
<!--            <plugin>-->
<!--                <groupId>org.springframework.boot</groupId>-->
<!--                <artifactId>spring-boot-maven-plugin</artifactId>-->
<!--            </plugin>-->
<!--        </plugins>-->
<!--    </build>-->
<!-- 重點: spring-boot-maven-plugin能夠將Spring Boot應用打包為可執(zhí)行的jar或war文件,root不需要,所以改成maven打包-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${maven.compiler.plugin.version}</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

修改demo-api的pom.xml

注意我們沒有指定打包類型,所以默認打成jar包

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <!-- parent改成我們自己的root -->
<!--    <parent>-->
<!--        <groupId>org.springframework.boot</groupId>-->
<!--        <artifactId>spring-boot-starter-parent</artifactId>-->
<!--        <version>2.3.1.RELEASE</version>-->
<!--        <relativePath/> &lt;!&ndash; lookup parent from repository &ndash;&gt;-->
<!--    </parent>-->
    <parent>
        <groupId>com.example</groupId>
        <artifactId>demo-root</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
    <!-- 可以繼承root -->
<!--    <groupId>com.example</groupId>-->
    <artifactId>demo-api</artifactId>
    <!-- 可以繼承root -->
<!--    <version>0.0.1-SNAPSHOT</version>-->
    <name>demo-api</name>
    <description>Demo project for Spring Boot</description>
    <!-- 可以繼承root -->
<!--    <properties>-->
<!--        <java.version>1.8</java.version>-->
<!--    </properties>-->
    <dependencies>
        <!-- 添加自己的依賴包 -->
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>demo-common</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
    </dependencies>
    <!-- 重點 -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!-- 當所依賴的其他模塊,有啟動類的時候,需要以下配置,指定唯一啟動類-->
                <configuration>
                    <!-- 指定該Main Class為全局的唯一入口 -->
                    <mainClass>com.example.demoapi.DemoApiApplication</mainClass>
                    <layout>ZIP</layout>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <!--可以把依賴的包都打包到生成的Jar包中-->
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

修改demo-common的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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <!-- 跟demo-api一樣,干掉原來的,使用我們自己的 -->
<!--    <parent>-->
<!--        <groupId>org.springframework.boot</groupId>-->
<!--        <artifactId>spring-boot-starter-parent</artifactId>-->
<!--        <version>2.3.1.RELEASE</version>-->
<!--        <relativePath/> &lt;!&ndash; lookup parent from repository &ndash;&gt;-->
<!--    </parent>-->
    <parent>
        <groupId>com.example</groupId>
        <artifactId>demo-root</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
    <artifactId>demo-common</artifactId>
    <name>demo-common</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <!-- 添加自己的 -->
        <mybatis-plus.version>3.3.1</mybatis-plus.version>
    </properties>
    <dependencies>
        <!-- 添加自己的 -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>${mybatis-plus.version}</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-extension</artifactId>
            <version>${mybatis-plus.version}</version>
        </dependency>
    </dependencies>
<!-- 重點:刪掉原來的,原因還是不需要可運行 -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

至此所有配置都已經完成,可以打包試試

[INFO] Reactor Summary:
[INFO] 
[INFO] demo-root .......................................... SUCCESS [  0.001 s]
[INFO] demo-common ........................................ SUCCESS [  1.599 s]
[INFO] demo-api ........................................... SUCCESS [  0.711 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.705 s
[INFO] Finished at: 2020-06-13T09:58:53+08:00
[INFO] Final Memory: 47M/334M
[INFO] ------------------------------------------------------------------------

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java Springboot 重要知識點整理匯總

    Java Springboot 重要知識點整理匯總

    Spring Boot作為微服務中最好的Java框架,本文主要為大家整理匯總了七個Spring Boot的重要知識點,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2021-11-11
  • Spring RestTemplate的使用與踩坑

    Spring RestTemplate的使用與踩坑

    RestTemplate是一個執(zhí)行HTTP請求的同步阻塞式工具類,它僅僅只是在HTTP客戶端庫基礎上,封裝了更加簡單易用的模板方法API,方便程序員利用已提供的模板方法發(fā)起網絡請求和處理,能很大程度上提升我們的開發(fā)效率
    2023-02-02
  • Java中JDK動態(tài)代理的超詳細講解

    Java中JDK動態(tài)代理的超詳細講解

    JDK 的動態(tài)代理是基于攔截器和反射來實現的,JDK代理是不需要第三方庫支持的,只需要JDK環(huán)境就可以進行代理,下面這篇文章主要給大家介紹了關于Java中JDK動態(tài)代理的超詳細講解,需要的朋友可以參考下
    2022-10-10
  • Java實現發(fā)送郵件并攜帶附件

    Java實現發(fā)送郵件并攜帶附件

    這篇文章主要為大家詳細介紹了Java實現發(fā)送郵件并攜帶附件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • JDBC連接MYSQL分步詳解

    JDBC連接MYSQL分步詳解

    JDBC是指Java數據庫連接,是一種標準Java應用編程接口(?JAVA?API),用來連接?Java?編程語言和廣泛的數據庫。從根本上來說,JDBC?是一種規(guī)范,它提供了一套完整的接口,允許便攜式訪問到底層數據庫,本篇文章我們來了解MySQL連接JDBC的流程方法
    2022-03-03
  • java創(chuàng)建以任意圖片為背景的窗口

    java創(chuàng)建以任意圖片為背景的窗口

    這篇文章主要為大家詳細介紹了java創(chuàng)建以任意圖片為背景的窗口,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Java基礎教程_判斷語句if else

    Java基礎教程_判斷語句if else

    下面小編就為大家?guī)硪黄狫ava基礎教程_判斷語句if else。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • fastJson泛型如何轉換的實現

    fastJson泛型如何轉換的實現

    這篇文章主要介紹了fastJson泛型如何轉換的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • java求最大公約數與最小公倍數的方法示例

    java求最大公約數與最小公倍數的方法示例

    這篇文章主要介紹了java求最大公約數與最小公倍數的方法,涉及java數值運算的相關操作技巧,并附帶分析了eclipse環(huán)境下設置運行輸入參數的相關操作技巧,需要的朋友可以參考下
    2017-11-11
  • 詳解如何判斷Java線程池任務已執(zhí)行完

    詳解如何判斷Java線程池任務已執(zhí)行完

    線程池的使用并不復雜,麻煩的是如何判斷線程池中的任務已經全部執(zhí)行完了,所以接下來,我們就來看看如何判斷線程中的任務是否已經全部執(zhí)行完吧
    2023-08-08

最新評論