1.子项目共用父项目中Maven依赖项

        在上面的项目构建完成之后,我们在父项目Pom文件中添加几个依赖项,但是在子项目的实体类中去添加注解发现不行,这是因为没有对父子项目进行关联,此处以本项目三层项目关系,lombok框架为例:

       多层级的Maven项目中,比如Eureka客户端是需要每一个子项目进行添加依赖的,这就会造成多处子项目Pom文件中存在Eureka客户端的依赖引用,造成版本管理困难等问题,将共用的依赖提升到父项目Pom文件中可以完美解决此问题

2.在父项目中添加依赖

      <!-- 集成lombok 框架 -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

重点在<modules>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.8.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <modules>
        <module>dhcc-shop-basics</module>
        <module>dhcc-shop-service-api</module>
    </modules>
    <groupId>com.tx</groupId>
    <artifactId>dhcc-shop-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>dhcc-shop-parent</name>
    <description>Demo project for Spring Boot</description>

 

3.在子项目中添加项目引用

    <parent>
        <groupId>com.tx</groupId>
        <artifactId>dhcc-shop-parent</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <modules>
        <module>dhcc-shop-service-api-weixin</module>
        <module>dhcc-shop-service-api-member</module>
    </modules>
    <groupId>com.tx</groupId>
    <artifactId>dhcc-shop-service-api</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>dhcc-shop-service-api</name>
    <description>Demo project for Spring Boot</description>
    <packaging>pom</packaging>

4.在内子项目中添加项目引用

    <parent>
        <groupId>com.tx</groupId>
        <artifactId>dhcc-shop-service-api</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
  

5.在内子项目中进行依赖项的应用

package com.tx.apiweixin.entity;


import lombok.Data;

/***
 * @Author Sunny
 * @Description //TODO  微信应用实体类
 * @Date 11:14 2019/9/17
 * @Param
 * @return
 */

@Data
public class AppEntity {

    private String appId;
    private String appName;

}

链接:https://pan.baidu.com/s/1ZELO7ExGYdGYBBG7BK8xgQ 
提取码:z5in 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐