使用Maven多模块怎么创建父子关系

发布时间:2021-05-11 15:59:29 作者:Leah
来源:亿速云 阅读:148

使用Maven多模块怎么创建父子关系?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Maven多模块(pom)

1.1 父模块创建

先创建个简单的空的Maven Project作为父项目

使用Maven多模块怎么创建父子关系

使用Maven多模块怎么创建父子关系

使用Maven多模块怎么创建父子关系

1.2 子模块创建

重新创建一个Maven Project作为子项目

使用Maven多模块怎么创建父子关系

使用Maven多模块怎么创建父子关系

使用Maven多模块怎么创建父子关系

1.3 父子模块(继承关系)

注意:此时父子模块为两个独立的项目。

使用Maven多模块怎么创建父子关系

步骤1:子项目中加入<parent>节点,传入父项目完整坐标。

使用Maven多模块怎么创建父子关系

步骤2:将子项目中的依赖都注释掉。

使用Maven多模块怎么创建父子关系

注意:此时子项目中的没有了Maven Dependencies。

使用Maven多模块怎么创建父子关系

步骤3:将子项目注释的依赖添加到父项目中。

使用Maven多模块怎么创建父子关系

注意:此时子项目中的依赖又添加回来了。

使用Maven多模块怎么创建父子关系

这种直接在父工程中加入<dependencies>的方式,让子工程可以直接复用依赖,但是缺点是所有的子项目无条件继承父工程所有依赖,所以如果要在父工程中添加依赖只能针对非常通用的依赖。

在父项目中再添加一个依赖。

使用Maven多模块怎么创建父子关系

子项目同时也继承了新添加的依赖。

使用Maven多模块怎么创建父子关系

那如果不想无条件继承父工程的所有依赖,而想让子项目自行选择需要的依赖又该如何做呢?

1.4 dependencyManagement

在父项目中用<dependencies>节点包裹<dependencies>节点,并且添加的是完整的依赖坐标(gav)。

使用Maven多模块怎么创建父子关系

此时子项目中的Maven Dependencies又会消失,说明添加<dependencies>节点后,它并不负责相关依赖的下载。

子项目加入相应同样依赖,注意不要加versionversion继承自父项目),需要什么样的依赖就声明什么。

使用Maven多模块怎么创建父子关系

特别注意,如果父项目提供了groupidversion,则删除子项目坐标中的groupidversion,直接继承父项目相关坐标。

使用Maven多模块怎么创建父子关系

dependencyManagement的作用:依赖版本管理器

  1. 本身并不下载任何依赖,只是管理依赖的版本。依赖的下载依然需要单独的<dependencies>(不加dependencyManagement,额外写一个)去做

  2. 如果<dependencies>中的<dependency>没有声明版本号(version),maven会去寻找有无对应的dependencyManagement,当前工程没有就会向上找父工程。如果找到就以dependencyManagement中对应依赖声明的version为准,否则报错version is missing。

看完上述内容,你们掌握使用Maven多模块怎么创建父子关系的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. springboot整合ssm创建Maven多模块项目
  2. 怎么在Idea中创建一个多模块maven聚合项目

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

maven

上一篇:易语言中有哪些多线程模块

下一篇:如何在易语言中使用皮肤模块

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》