【工具】微服务Maven依赖的继承聚合关系

1、父服务为什么要加<packaging>pom</packaging>

  • 配置<packaging>pom</packaging>的意思是使用maven分模块管理。
  • packaging是pom文件一个重要的属性(打包类型),packaging默认类型jar类型。
  • 一般来说对于所有的父级项目的packaging都需要设置为pom。如果不对父模块做配置,则maven会将该项目打成jar包,如果其没有jar包所需的启动类,则会报错。

2、<dependencyManagement></dependencyManagement>是啥?怎么用?

  • 一般只有在最外层的项目中才会存在dependencyManagement
  • 它的作用是管理其中的依赖。
  • 如果子模块需要继承该父模块dependencyManagement中的所有依赖,则直接手动通过<dependency>引入该父模块就行了。
  • 它还有一个用法就是,如果子模块需要引入其中的某个依赖,则只需要写依赖的<groupId><artifactId>就行了,不用写版本号<version>

最常见的地方就是idea创建 springboot 项目的默认 pom.xml ,其 pom.xml 中的 parent 标签内容为 springboot 的一个版本, Ctrl + 鼠标左键进去,会发现里面也有dependencyManagement,配置了许许多多的依赖。他们都有默认版本。所以我们经常使用 springboot 时,只要其 pom.xml 中有对应 springboot 的 parent 标签,我们写依赖时,绝大部分都不需要写版本号。

在这里插入图片描述

直接引入,不需要添加版本号

在这里插入图片描述

3、子项目默认依赖父项目的依赖

子项目只要存在于父项目的modules中,则会自动默认依赖父项目中的非dependencyManagement包含的依赖。

<modules>
    <module>service_base</module>
    <module>spring_security</module>
</modules>

4、依赖其他非父模块的服务

直接干干干!!!

<dependency>
    <groupId>com.tangxz</groupId>
    <artifactId>spring_security</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

5、微服务项目打包:

没有主函数的服务中的pom.xml中不允许添加打包插件(项目主工程);

是其它模块依赖的模块(common服务)不允许添加打包插件,否则项目中maven的任何命令都会报错。

打包插件部分:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <!-- 打包跳过测试 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skipTests>true</skipTests>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值