一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - SpringBoot+Maven 多模塊項目的構建、運行、打包實戰

SpringBoot+Maven 多模塊項目的構建、運行、打包實戰

2021-05-05 10:57zekeTao Java教程

這篇文章主要介紹了SpringBoot+Maven 多模塊項目的構建、運行、打包實戰,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

本篇文章主要介紹了springboot+maven 多模塊項目的構建、運行、打包,分享給大家,具體如下:

項目使用的工具:

  1. intellij idea
  2. jdk 1.8
  3. apache-maven-3.3.9

項目的目錄:

  1. 主項目 springboot-multi
  2. 子模塊 entity、dao、service、web

一、使用idea創建一個springboot項目 : file -> new -> project 項目名稱為springboot-multi

二、刪除項目中的src目錄,把pom.xml中的項目打包方式改為pom,如下:

?
1
2
3
4
5
<groupid>com.example</groupid>
<artifactid>springboot-multi</artifactid>
<version>0.0.1-snapshot</version>
<!-- 此處改為pom -->
<packaging>pom</packaging>

三、創建springboot-multi項目的子模塊,在項目上右鍵單擊,選擇:new -> module。

四、創建四個子模塊后,刪除子模塊中 src/main/java、src/main/java下的所有文件(如果沒有文件跳過此操作),只保留web子模塊的springboot的application主啟動類。

五、主項目pom.xml (注意<modules>標簽是否指定了子模塊)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<modelversion>4.0.0</modelversion> 
  <groupid>com.example</groupid>
  <artifactid>springboot-multi</artifactid>
  <version>0.0.1-snapshot</version>
  <!-- 此處改為pom -->
  <packaging>pom</packaging>
 
  <name>springboot-multi</name>
  <description>demo project for spring boot</description>
 
  <modules>
    <module>web</module>
    <module>service</module>
    <module>dao</module>
    <module>entity</module>
  </modules>
 
  <parent>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-parent</artifactid>
    <version>1.5.10.release</version>
    <relativepath/> <!-- lookup parent from repository -->
  </parent>
 
  <properties>
    <project.build.sourceencoding>utf-8</project.build.sourceencoding>
    <project.reporting.outputencoding>utf-8</project.reporting.outputencoding>
    <java.version>1.8</java.version>
  </properties>
 
  <dependencies>
    <dependency>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-starter-web</artifactid>
    </dependency>
  </dependencies>
 
  <!--指定使用maven打包-->
  <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>
 
      <plugin>
        <groupid>org.apache.maven.plugins</groupid>
        <artifactid>maven-surefire-plugin</artifactid>
        <version>2.19.1</version>
        <configuration>
          <skiptests>true</skiptests>  <!--默認關掉單元測試 -->
        </configuration>
      </plugin>
    </plugins>
  </build>

六、web子模塊pom.xml(依賴service、dao、entity子模塊) 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<modelversion>4.0.0</modelversion> 
  <groupid>com.example</groupid>
  <artifactid>web</artifactid>
  <version>0.0.1-snapshot</version>
  <packaging>jar</packaging>
 
  <name>web</name>
  <description>demo project for spring boot</description>
 
  <parent>
    <groupid>com.example</groupid>
    <artifactid>springboot-multi</artifactid>
    <version>0.0.1-snapshot</version>
    <relativepath>../pom.xml</relativepath>
  </parent>
 
  <dependencies>
    <dependency>
      <groupid>com.example</groupid>
      <artifactid>service</artifactid>
      <version>0.0.1-snapshot</version>
    </dependency>
    <dependency>
      <groupid>com.example</groupid>
      <artifactid>dao</artifactid>
      <version>0.0.1-snapshot</version>
    </dependency>
    <dependency>
      <groupid>com.example</groupid>
      <artifactid>entity</artifactid>
      <version>0.0.1-snapshot</version>
    </dependency>
  </dependencies>
 
  <!--spring boot打包的話需要指定一個唯一的入門-->
  <build>
    <plugins>
      <plugin>
        <groupid>org.springframework.boot</groupid>
        <artifactid>spring-boot-maven-plugin</artifactid>
        <configuration>
          <!-- 指定該main class為全局的唯一入口 -->
          <mainclass>com.example.webapplication</mainclass>
          <layout>zip</layout>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>repackage</goal><!--可以把依賴的包都打包到生成的jar包中-->
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

七、service子模塊pom.xml(依賴 dao 、entity子模塊)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<modelversion>4.0.0</modelversion>
 
  <groupid>com.example</groupid>
  <artifactid>service</artifactid>
  <version>0.0.1-snapshot</version>
  <packaging>jar</packaging>
 
  <name>service</name>
  <description>demo project for spring boot</description>
 
  <parent>
    <groupid>com.example</groupid>
    <artifactid>springboot-multi</artifactid>
    <version>0.0.1-snapshot</version>
    <relativepath>../pom.xml</relativepath>
  </parent>
 
  <dependencies>
    <dependency>
      <groupid>com.example</groupid>
      <artifactid>dao</artifactid>
      <version>0.0.1-snapshot</version>
    </dependency>
    <dependency>
      <groupid>com.example</groupid>
      <artifactid>entity</artifactid>
      <version>0.0.1-snapshot</version>
    </dependency>
  </dependencies>

八、dao子模塊pom.xml (依賴entity子模塊) 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<modelversion>4.0.0</modelversion>
 
<groupid>com.example</groupid>
<artifactid>dao</artifactid>
<version>0.0.1-snapshot</version>
<packaging>jar</packaging>
 
<name>dao</name>
<description>demo project for spring boot</description>
 
<parent>
  <groupid>com.example</groupid>
  <artifactid>springboot-multi</artifactid>
  <version>0.0.1-snapshot</version>
  <relativepath>../pom.xml</relativepath>
</parent>
 
<dependencies>
  <dependency>
    <groupid>com.example</groupid>
    <artifactid>entity</artifactid>
    <version>0.0.1-snapshot</version>
  </dependency>
</dependencies>

九、entity子模塊

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<modelversion>4.0.0</modelversion>
 
<groupid>com.example</groupid>
<artifactid>entity</artifactid>
<version>0.0.1-snapshot</version>
<packaging>jar</packaging>
 
<name>entity</name>
<description>demo project for spring boot</description>
 
  <parent>
    <groupid>com.example</groupid>
    <artifactid>springboot-multi</artifactid>
    <version>0.0.1-snapshot</version>
    <relativepath>../pom.xml</relativepath>
  </parent>

十、pom.xml文件中需要注意的就是:

  1. 主項目的modules標簽指定的子模塊是否正確
  2. 子模塊之間的依賴
  3. 子模塊的parent標簽

十一、web子模塊的application啟動類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
@restcontroller
@springbootapplication
public class webapplication {
 
  public static void main(string[] args) {
    springapplication.run(webapplication.class, args);
  }
 
  @requestmapping(value = "/test",method = requestmethod.get)
  public string test(){
    return "test success";
  }
}

十二、執行main方法啟動項目,訪問localhost:8080/test,出現如下頁面表示項目搭建成功:

SpringBoot+Maven 多模塊項目的構建、運行、打包實戰

十三、項目打包命令: mvn clean package 或者 使用右邊工具欄的圖形化界面打包也可以:

SpringBoot+Maven 多模塊項目的構建、運行、打包實戰

十四、打包成功日志:

SpringBoot+Maven 多模塊項目的構建、運行、打包實戰

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/zeketao/article/details/79413919

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品高清视亚洲一区二区 | 国产hd老太婆 | aaa一级特黄 | 亚洲第一区在线观看 | 久久久久久久电影 | 国产精品久久久天天影视香蕉 | 1024在线视频精品免费 | 国产精品久久久久久久久久久久 | 亚洲成年www | 成人免费片 | 久久精品中文字幕 | 色综合久久98天天综合 | 99最新网址| 国产精品suv一区二区 | 成人福利免费视频 | 性啪啪chinese东北女人 | 99香蕉网 | 美女做又爽又黄又猛 | 国产成人精品免费视频软件 | 884aa草莓视频| 黄动漫车车好快的车车a | 青青青国产在线观看 | 国产无套在线播放 | 免费午夜影院 | 99精品视频在线观看 | 亚洲一卡2卡三卡4卡5卡组 | 国产99在线 | 亚洲福利一区二区三区 | 婷婷色婷婷 | 色交视频| 天码毛片一区二区三区入口 | 成人榴莲视频 | 日日射视频 | 久草在线福利资站免费视频 | 欧美又黄又激烈真实床戏 | 日本高清免费中文字幕不卡 | 深夜激情网 | 免费理伦片手机在线播放 | 久久精品中文闷骚内射 | yellow视频在线观看免费 | 男人操女生 |