spring boot 子模块引用父工程的jar
时间: 2024-12-02 15:14:09 浏览: 17
Spring Boot项目通常包含多个模块,每个模块都有自己的独立构建过程。当你有一个父项目(例如parent POM或模块A)提供了一些公共配置、依赖或者服务,而其他子模块(如module B或C)需要引用这些共享的内容时,你可以通过Maven的父子模块(Child Module)结构来实现。
1. **设置父POM**:首先,在父项目的pom.xml文件中,添加`<modules>`标签并声明子模块,同时配置 `<packaging>pom</packaging>`表示这是一个管理模块。
```xml
<modules>
<module>module-a</module>
<module>module-b</module>
</modules>
```
2. **引用父依赖**:在子模块(如module-B)的pom.xml中,使用`<parent>`标签引入父模块,指定父模块的groupId、artifactId和version:
```xml
<parent>
<groupId>com.example.parent</groupId>
<artifactId>parent-pom</artifactId>
<version>1.0.0</version>
</parent>
```
3. **打包和发布**:在父模块中,使用`mvn clean install`命令生成所有子模块的jar包。子模块会在它们各自的target目录下找到引用的父模块jar,可以直接作为依赖使用。
4. **访问共享服务**:在子模块的代码中,可以通过Spring的自动装配(Autowired)或其他方式,直接使用来自父模块的bean或类,无需额外的路径前缀。
注意:在实际应用中,为了避免循环依赖,可能需要调整模块结构或者使用maven的exclusions机制处理冲突。
阅读全文