聚合
多个子模块通过一个pom.xml完成编译
如下:
<modelVersion>4.0.0</modelVersion>
<groupId>org.konghao.user</groupId>
<artifactId>user-eggregation</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>../user-core1</module>
<module>../user_service</module>
<module>../user-dao</module>
<module>../user-log</module>
</modules>
使用命令mvn clean install module下面的多个子模块都会安装到本地库
继承
pom.xml中的properties节点 定义属性 在其他地方可以引用 使用$符号{}引用
属性继承
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<junit.version>4.10</junit.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<!-- <version>4,10</version>-->
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
在父pom.xml中加的依赖,和属性 子pom.xml都可以继承
<parent>
<groupId>com.lxl.user</groupId>
<artifactId>user-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../user-parent/pom.xml</relativePath>
</parent>
在父pom.xml中用dependencyManagement 引用所有的jar
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
在子pom.xml中引用时可以不用指定版本
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
聚合的module也可以放在parent的pom.xml
常用属性
${project.groupId}
${project.version}
版本管理
总版本号.分支版本号.小版本号-里程碑版本
总版本号的变动表示框架的变动
分支版本号 表示增加一些功能
小版本号 在分支版本上进行bug修复
里程碑版本 SNAPSHOT-->alpha -->beta-->release
快照版本 内部测试版本 内部测试继续版本 测试完成 稳定版本
1,完成一个maven代码后编写测试类并进行测试
输入clean test 测试 测试成功 同样输入clean install 打包 jar
如图编译成功创建一个jar 如果失败可查看target的TestUser.txt日志