Spring Boot中的多模块项目管理
在Spring Boot中创建多模块项目,可以通过Maven或Gradle来构建。以下是一个简单的多模块项目的示例。
- 使用Maven创建多模块项目:
my-project/
│
├── pom.xml
│
├── my-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ └── java/
│ └── com/example/myservice/
│ └── MyServiceApplication.java
│
└── my-web/
├── pom.xml
└── src/
└── main/
└── java/
└── com/example/myweb/
└── MyWebApplication.java
根目录下的pom.xml
定义项目的版本、属性和模块。
my-service
模块的pom.xml
定义该模块的依赖和配置。
my-web
模块的pom.xml
定义该模块的依赖和配置。
- 使用Gradle创建多模块项目:
my-project/
│
├── build.gradle
│
├── my-service/
│ ├── build.gradle
│ └── src/
│ └── main/
│ └── java/
│ └── com/example/myservice/
│ └── MyServiceApplication.java
│
└── my-web/
├── build.gradle
└── src/
└── main/
└── java/
└── com/example/myweb/
└── MyWebApplication.java
根目录下的build.gradle
定义项目的配置和子项目。
my-service
模块的build.gradle
定义该模块的依赖和配置。
my-web
模块的build.gradle
定义该模块的依赖和配置。
在pom.xml
或build.gradle
文件中,你需要定义项目的依赖关系,并且在子模块中配置Spring Boot的启动类。
Maven示例pom.xml
(根目录):
<groupId>com.example</groupId>
<artifactId>my-project</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>my-service</module>
<module>my-web</module>
</modules>
...
Gradle示例build.gradle
(根目录):
allprojects {
group 'com.example'
version '1.0-SNAPSHOT'
}
subprojects {
apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
dependencies {
implementation 'org.springframework.boot:spring-boot-starter'
}
}
project(':my-service') {
dependencies {
implementation project(':my-web')
}
}
...
在每个子模块中,你需要添加Spring Boot的依赖并配置@SpringBootApplication
注解。
Maven示例my-service/pom.xml
:
<parent>
<groupId>com.example</groupId>
<artifactId>my-project</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>my-service</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
</dependencies>
...
Gradle示例my-service/build.gradle
评论已关闭