DATE:2020/1/19
1.MAVEN的聚合?
聚合是指为了方面管理项目的各个模块,用单独一个模块管理项目的架构,从而方便对项目整体进行操作,同时对模块的更新进行控制。
这个模块不需要代码,只需要一个含有项目模块的pom:
<packaging>pom</packaging>
<modules>
<module>../maven_demo1</module>
<module>../maven_demo2</module>
</modules>
2.模块的继承?
在聚合的模块中声明全部技术需要的依赖,使用标签< dependencyManagement >来声明此处为依赖管理,或使用:< pluginManagement>标签来声明配置管理。
而子类通过< parent>标签来声明继承关系,继承通常用于同步模块间的依赖版本。
<parent>
<groupId>xx</groupId>
<artifactId>xx</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../maven_demo</relativePath>
</parent>
3.工程版本的含义
工程版本号的常用约定:
<主版本><次版本><增量版本><里程碑版本>
主版本:主要功能的版本
次版本:进行优化的版本
增量版本:未改动其他功能只进行一些增添的版本
里程碑版本:对项目有影响的版本,比如游戏释放了demo,测试等。
举例以下两个:
-
SNAPSHOT——快照:
代表本模块为开发时输出的临时快照版本。 -
RELEASE——发布版本:
代表本模块所开发的功能基本完成,向外部发布的稳定版本,之后的更新不会影响当前版本的使用,成为发布版本。
4.资源配置
使用标签对不同环境下到资源进行配置
<profiles>
<profile>
<id>id</id>
<properties>
<name>
xxx
</name>
</properties>
<!--设为默认启动-->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
</profiles>
在运行的时候带入参数 -p id
5.宿主仓库HOSTED,代理仓库PROXY,仓库组的区别?
宿主仓库hosted
- 保存无法从中央仓库获取的资源
- 自主研发
- 第三方非开源项目
代理仓库proxy
- 代理远程仓库,通过nexus访问其他公共仓库,例如中央仓库
仓库组group
- 将若干个仓库组成一个群组,简化配置
- 仓库组不能保存资源,属于设计型仓库
6.设定发布服务器
- 设定本地连接服务器的账号信息,在本地maven设置中加一组
<server>
<id>noname</id>
<username>admin</username>
<password>admin</password>
</server>
- 设置项目发布目录
<distributionManagement>
<repository>
<id>noname</id>
<url>http://localhost:8081/repository/maven-snapshots/</url>
</repository>
</distributionManagement>