分模块开发与设计
- 新建模块
- 拷贝原项目相关内容到新模块中
- 相关代码
- 配置文件
- pom.xml:进行筛选,删除不需要的配置
- 修改配置文件名称
- 导入相关模块的jar包
- 进行编译测试
- 打包安装,方便下一步的使用
在我看来分模块开发就是将原本的个个层级拆分开,将每一个层级都设置成单独的一个Maven项目,便于工程的开发和维护。通过导入jar包,来确保接口的正常使用。
聚合
多模块构建维护 通过一个Maven项目同时实现分模块的同一操作,统一操作。
创建一空白模块,将其打包类型定义为pom
<packaging>pom</pavkaging>
- 该项目中只存在一个 pom.xml 文件
模板:
<!--管理的工程列表-->
<modules>
<!--具体的工程名称-->
<module>工程名称</module>
<module>工程名称</module>
<module>工程名称</module>
<modules>
配置的工程名称先后对于运行的先后没有影响,又工程的依赖关系来决定先后顺序。
继承
继承是由子工程继承父工程,继承夫工程后,依赖以及插件的版本信息统一由父工程决定,在子工程中可以不在写依赖的版本信息简化操作。
继承与聚合
-
可以实现快速构建项目,快速配置。
-
继承和聚合都是设计模块,没有实质的模块内容,只存在一个 pom 文件。
-
由于两者都是pom文件所以两者可以结合在一切,在同一个模块下完成。
-
继承模块无法知道是何子模块继承了父类工程。聚合可以知道使用了那些子模块。
插件管理
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
</plugin>
</plugins>
</pluginManagement>
依赖管理
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
</dependencyManagement>
继承
<parent>
<!--父类的信息-->
<groupId></groupId>
<artifactId></artifactId>
<version></version>
<!--父项目的路径-->
<relativePath></relativePath>
</parent>
<!-- 子模块中只需要保存打包方式、项目名称、以及model版本-->
<packaging>war</packaging>
<artifactId>maven03</artifactId>
<modelVersion>4.0.0</modelVersion>
属性
**定义自定义属性 ** 类似于Java中的常量,通过自定义属性,达到修改一处改变全局的作用
<properties>
//一般用使用技术的名称来命名
<spring.version>5.1.8.RELEASE</spring.verision>
</properties>
使用方式:
<version>${spring.version}</version>
// ${自定义属性名} 使用自定义属性 类似于js中的数据引用
// ${version} 表示的是该 pom 文件的版本属性
属性类别
- 自定义属性
- 内置属性
- Setting属性
- Java系统属性
- 环境变量属性
版本管理
**SNAPSHOT:**开发中的版本,项目不稳定。可能存在问题。尝鲜版本。
**RELEASE:**已完成版本,更加稳定,功能完善。
资源配置
- 首先定义自定义属性
- 添加 对要使用自定义属性的资源进行选择
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MNwo7sIi-1670331596297)(D:\笔记\学习收获\。。。\Maven\image-20220923163723504.png)]
环境配置
为了解决不同的环境中使用不同的配置文件,同时为了方便管理。创建多环境。
- 创建多环境
- 定义具体的环境
- 定义具体唯一的 id
- 配置环境中专用的属性值
- 可选择设置默认环境 / 默认某一环境开启
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pmcLyPtj-1670331596299)(D:\笔记\学习收获\。。。\Maven\image-20220903220534224.png)]
如何配置环境:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x53WQK1T-1670331596299)(D:\笔记\学习收获\。。。\Maven\image-20220903220305353.png)]
在命令行中输入运行命令后 -P 输入 环境配置 id。
跳过测试
- 闪电按钮设置所有跳过配置
配置文件跳过
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pvFyjUYZ-1670331596299)(D:\笔记\学习收获\。。。\Maven\image-20220903221802104.png)]
私服
-
首先在本地仓库的配置文件中配置相对应的镜像仓库(私服)
-
创建对应的仓库 id 以及用户名和密码
-
在 idea 中的 pom 文件中配置对应的上传路径。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UPWuqcGq-1670331596300)(D:\笔记\学习收获\。。。\Maven\image-20220903224857759.png)]
在这里先前配置的仓库 id 开始使用。通过 id 来匹配对应的用户名以及用户密码,完成与仓库的连接。 根据上传仓库位置的不同 设置不同的 url 来实现上传。