《JavaWeb篇》03.Maven看这一篇就够了(二)

简介: 《JavaWeb篇》03.Maven看这一篇就够了(二)

6.分模块开发与设计


参考视频进行实验即可


(1)聚合

作用:聚合用于快速构建Maven工程,一次性构建多个项目/模块。

制作方式:创建一个空模块,打包类型定义为pom

<packaging>pom</packaging>

定义当前模块进行构建操作时关联的其他模块名称


<modules>
  <module>模块地址</module>
  <module>模块地址</module>
  <module>模块地址</module>
  <module>模块地址</module>
</modules>

注意:参与聚合操作的模块最终执行顺序与模块间的依赖关系有关,与配置顺序无关


(2)继承

作用:通过继承可以实现在子工程中沿用父工程中的配置(与Java类似)

制作方式:在子工程中生命其父工程坐标与对应的位置

<!--定义该工程的父工程-->
<parent>
  <groupId></groupId>
  <artifactId></artifactId>
  <version></version>
  <!--填写父工程的pom文件-->
  <relativePath>父工程pom文件地址</relativePath>
</parent>

在父工程中定义依赖管理


<!--声明此处进行依赖管理-->
<dependencyManagement>
  <!--具体的依赖-->
  <dependencies>
    <dependency>
      <groupId></groupId>
      <artifactId></artifactId>
      <version></version>
    </dependency>
  </dependencies>
</dependencyManagement>

继承依赖使用:在子工程中定义依赖关系,无需声明依赖版本,版本参照父工程中依赖的版本


<dependencies>
  <dependency>
    <groupId></groupId>
    <artifactId></artifactId>
  </dependency>
</dependencies>

(3)继承与聚合

作用:聚合用于快速构建项目,继承用于快速配置

相同点:

聚合与继承的pom.xml文件打包方式均为pom,可以将两种关系制作到同一个pom文件中

聚合与继承均属于设计型模块,并无实际的模块内容

不同点:聚合是在当前模块中配置关系,聚合可以感知到参与聚合的模块有哪些

继承是在子模块中配置关系,父模块无法感知哪些子模块继承了自己


(4)属性

自定义属性


作用:等同于定义变量,方便统一维护

定义格式:


<!--定义自定义属性-->
<properties> 
  <spring.version>5.1.9.RELEASE</spring.version>
  <junit.version>4.12</junit.version>
</properties>

调用格式:


<dependency> 
  <groupId>org.springframework</groupId> 
  <artifactId>spring-context</artifactId> 
  <version>${spring.version}</version>
</dependency>

内置属性


作用:使用Maven内置属性,快速配置

调用格式:


${basedir}
${version}
Setting属性


作用:使用Maven配置文件setting.xml中的标签属性,用于动态配置

调用格式:


${settings.localRepository}

Java系统属性


作用:读取Java系统属性

调用格式:


${user.home}

系统属性查询方式:


mvn help:system

环境变量属性


作用:使用Maven配置文件setting.xml中的标签属性,用于动态配置

调用格式:


${env.JAVA_HOME}

环境变量属性查询方式:


mvn help:system


7.版本管理


SNAPSHOT(快照版本) RELEASE(发布版本)

工程版本号约定


image.png

8.资源配置


配置文件引用pom属性

作用:在任意配置文件中加载pom文件中定义的属性

调用格式


${地址}

开启配置文件加载pom属性


<!--配置资源文件对应的信息-->
<resources>
  <resource>
    <!--设定配置文件对应的位置目录,支持使用属性动态设定路径-->
    <directory>地址</directory>
    <!--开启对配置文件的资源加载过滤-->
    <filtering>true</filtering>
  </resource>
</resources>

9.多环境开发配置


<!--创建多环境-->
<profiles>
  <!--定义具体的环境:生产环境-->
  <profile>
    <!--定义环境对应的唯一名称-->
    <id>开发环境名称1</id>
    <!--定义环境中的专用的属性值-->
    <properties>
      <jdbc.url>jdbc链接</jdbc.url>
    </properties>
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
  </profile>
  <!--定义具体的环境:开发环境-->
  <!--格式同上-->
</profiles>
相关文章
|
Java Maven 数据安全/隐私保护
《JavaWeb篇》03.Maven看这一篇就够了(三)
《JavaWeb篇》03.Maven看这一篇就够了(三)
《JavaWeb篇》03.Maven看这一篇就够了(三)
|
存储 Java 程序员
《JavaWeb篇》03.Maven看这一篇就够了(一)
《JavaWeb篇》03.Maven看这一篇就够了(一)
《JavaWeb篇》03.Maven看这一篇就够了(一)
|
2天前
|
Java Maven
Maven 项目测试
接下来我们要学习如何构建和测试这个项目。
16 5
|
15天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
9天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
11天前
|
Java Maven
Maven 项目文档
我们主要学习如何创建 Maven 项目文档。
24 3
|
13天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
11天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
21天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
17天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档