Maven针对SpringBoot的多项目依赖配置
2018-09-28 本文已影响0人
asing1elife
在Spring Boot中对于多项目依赖配置,可通过Maven实现
更多精彩
- 更多技术博客,请移步 asing1elife's blog
创建一个父级的pom文件
- 在该pom中指定其
<groupId/>
、<artifactId/>
、<version/>
-
<packaging/>
必须是pom -
<parent/>
需要引入spring-boot-starter-parent
表示继承Spring Boot的父级配置 -
<modules/>
中依次引入后续需要相互依赖的项目 -
<dependencyManagement/>
中对上述引入的项目进行完成依赖配置
<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 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.innovaee.hts.parent</groupId>
<artifactId>innovaee-hts-parent</artifactId>
<version>1.0.0.RELEASE</version>
<packaging>pom</packaging>
<name>innovaee-hts-parent</name>
<url>http://maven.apache.org</url>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.8.RELEASE</version>
</parent>
<modules>
<module>hts-admin-backend</module>
...
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.innovaee.hts</groupId>
<artifactId>hts-admin-backend</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
...
</dependencies>
</dependencyManagement>
</project>
在各个子项目的pom中对依赖关系进行配置
- 父级不再指向Spring Boot的父级,而是上述自定义父级
<parent>
<groupId>com.innovaee.hts.parent</groupId>
<artifactId>innovaee-hts-parent</artifactId>
<version>1.0.0.RELEASE</version>
</parent>
- 从父级中获取需要的依赖配置
<dependency>
<groupId>org.tshark.core</groupId>
<artifactId>tshark-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
...
</dependency>
在需要被打包成jar包的项目中引入Spring Boot的编译插件
<build>
<finalName>hts-admin</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
在父级pom所在的目录中执行打包命令对项目进行打包
mvn clean package -Dmaven.test.skip=true