Idea使用Spring initializr搭建Maven的父工程和子項目

本教程是使用Idea下使用spring initializr去搭建Maven工程多項目,也是搭建SpringCloud的多項目教程

 

1.搭建父項目

1.1首先在建立一個空的文件目錄(選擇性可以建也可以不建)

1.2可以看到空文件夾的路徑

1.3接下來開始搭建父工程  file--New--Module...

1.4Group是你的域名,Artifact是你的項目名,Type選擇POM

1.5依賴頁面,本次就跳過,直接下一步

1.6可以看到下圖你的項目保存的路徑

1.7可以看到項目建好了

1.8在父類的pom.xml文件加入

<packaging>pom</packaging>

 

2.建立子項目

2.1 選中父項目右鍵---New--Module....

2.2看圖操作

2.3直接跳過依賴選擇下一步,就可以路徑,注意了,改好了再點擊finish

2.4打開springcloud-api-member-service-impl項目進入pom.xml文件進行修改

把原來的多餘依賴刪了,只保留這些

2.5打開springcloud-parents下的pom.xml文件添加子項目

這樣父子項目搭建完成了

 

3.項目直接的調用

3.1請你按照第二步建立一個新的項目springcloud-api-order-service-impl

3.2建立好記得修改父的pom和子的pom文件

3.3建立好的視圖

3.4,假如springcloud-api-order-service-impl要引用springcloud-api-member-service-impl

只需要在springcloud-api-order-service-impl的pom.xml文件引入依賴就可

 

 

4.總結

附上pom文件

1.父項目springcloud-parents的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.2.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <!--標註爲父項目pom-->
    <groupId>cn.phlos</groupId>
    <artifactId>springcloud_parents</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>pom</packaging>
    <name>springcloud_parents</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

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

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <!--添加子項目-->
    <modules>
        <module>springcloud-api-member-service-impl</module>
        <module>springcloud-api-order-service-impl</module>
    </modules>

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

</project>

2.子項目springcloud-api-member-service-impl的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>cn.phlos</groupId>
        <artifactId>springcloud_parents</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <artifactId>springcloud-api-member-service-impl</artifactId>

</project>

3.子項目springcloud-api-order-service-impl的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>cn.phlos</groupId>
        <artifactId>springcloud_parents</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <artifactId>springcloud-api-order-service-impl</artifactId>

    <dependencies>
        <dependency>
            <groupId>cn.phlos</groupId>
            <artifactId>springcloud-api-member-service-impl</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
    </dependencies>


</project>
 

 

PS:父子的工程搭建完成了,就這麼簡單

題外:

1.在父項目下,子項目想要使用另一個子項目的內容,就在當前子項目的pom文件引入該子項目的依賴就可以

2.在總父項目下還有父1項目,父1項目也是按照上面的操作引入總父的依賴,父1的pom裏就按照總父項目引入其下的子項目

如圖項目架構

 

 

 

發佈了23 篇原創文章 · 獲贊 28 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章