MAVEN高级

1.分模块设计与开发

便于项目管理、拓展、维护与资源共享

创建项目在IDEA里选择Maven模块。

2.继承

继承的单位是工程(包括模块),类似于java中的继承(不能多继承,即只能有一个父工程),子工程可以继承父工程的配置信息。

实现:在pom.xml中使用<parent>标签

创建父工程:

  • 设置打包方式为pom(默认为jar):<packaging>pom</packaging>
  • 配置各个工程中各有的依赖

创建子工程并继承

  • 通过<parent>标签指定父工程
    • 在<parent>标签内使用<groupId>,<artifactId><version>引入父工程的坐标
    • 在<parent>标签内通过<relativePath>指定父工程pom文件的相对位置(不指定会在本地仓库/远程仓库中查找)

在子工程继承父工程后,groupId可以省略

就近原则:父子工程配置了同一个依赖的不同版本,以子工程为准

版本锁定<dependencyManagement>

  • 概念:可以在父工程的pom文件中通过<dependencyManagement>来统一管理依赖版本。之后,子工程引入依赖则无需指定版本号,由父工程统一管理。
  • 场景:同属于一个父工程下的部分子工程需要一个依赖,而其他子工程不需要,如果直接在父工程中引入,使得工程臃肿。
  • 与在父工程中使用<dependency>直接引入依赖统一管理的区别:<dependencyManagement>指负责管理版本号,并不引入依赖。

自定义 属性/引用属性

管理大型项目时,由于引入依赖多,控制版本的标签分散,不便于管理。为了便于统一集中管理:

  • 使用<properties>标签自定义标签\属性。
  • 使用<version>${自定义标签}</version>指定依赖版本

例:

自定义属性部分:

<properties>
    <lombok.version>1.18.24</lombok.version>
    <jjwt.version>0.9.0</jjwt.version>
</properties>

版本锁定部分:

<dependencyManagement>
    <dependencies>
        <!--- JWT 令牌--->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>${jjwt.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

直接引入依赖部分:

<dependencies>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>${lombok.version}</version>
    </dependency>
</dependencies>

3.聚合

  • 概念:将多个模块组织成一个整体,同手进行项目的构建,需要一个聚合工程。用于快速构建项目。
  • 聚合工程:将多个模块聚合在一起但是不具有业务功能的“空工程(有且仅有一个pom文件)”。一般是顶层父模块。
  • 实现:在聚合工程中使用<modules>标签来指定包含的子模块。
    • <modules>标签内是子模块相对于父模块的相对路径。

例:

<modules>
    <module>module - 1</module>
    <module>module - 2</module>
  </modules>

4.私服:

实际参与工作再学…

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇