一、下载
官方地址 => maven.apache.org
二、本地安装
设置环境变量path为maven目录下的bin目录。
验证是否安装成功,控制台中使用mvn -version可以查看到版本信息。
三、集成开发工具
MyEclipse中自带maven插件,Eclipse需要安装插件。
四、仓库repository
默认存储地址在${user.home}/.m2/repository
可以通过修改D:\apache-maven-3.3.9\conf\settings.xml自定义仓库存放地址。
五、依赖
通过配置pom.xml文件,可以实现jar的自动下载。
优先从本地仓库下载,如果本地仓库没有则先从maven中心仓库下载。
1、groupId ==> 项目
2、artifactId ==> 模块
3、version ==> 版本
七、传递依赖
如果B依赖A、C依赖B,C也依赖了A
相同依赖优先级
1、取优先使用
2、取依赖路劲最小
八、scope依赖的范围
1、compile 默认,编译、运行时加载
2、test 测试时加载
3、provided 编译时加载、运行时不加载
4、runtime 运行时加载
九、排除
十、聚合
将<packaging>pom</packaging>设置为pom,统一管理多个pom
十、继承
将<packaging>pom</packaging>设置为pom,子类强制依赖父类所有jar包。
十一、继承管理
父类通过dependencyManagement申明依赖所有的jar包,子类不直接继承所有jar包,必须手动指定依赖的jar包。
官方地址 => maven.apache.org
二、本地安装
设置环境变量path为maven目录下的bin目录。
验证是否安装成功,控制台中使用mvn -version可以查看到版本信息。
三、集成开发工具
MyEclipse中自带maven插件,Eclipse需要安装插件。
四、仓库repository
默认存储地址在${user.home}/.m2/repository
可以通过修改D:\apache-maven-3.3.9\conf\settings.xml自定义仓库存放地址。
<!-- localRepository
The path to the local repository maven will use to store artifacts.
Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
<localRepository>D:\apache-maven-3.3.9\repository</localRepository>
-->
五、依赖
通过配置pom.xml文件,可以实现jar的自动下载。
优先从本地仓库下载,如果本地仓库没有则先从maven中心仓库下载。
1、groupId ==> 项目
2、artifactId ==> 模块
3、version ==> 版本
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
</dependencies>
七、传递依赖
如果B依赖A、C依赖B,C也依赖了A
相同依赖优先级
1、取优先使用
2、取依赖路劲最小
八、scope依赖的范围
1、compile 默认,编译、运行时加载
2、test 测试时加载
3、provided 编译时加载、运行时不加载
4、runtime 运行时加载
九、排除
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.5.RELEASE</version>
</exclusion>
</exclusions>
十、聚合
将<packaging>pom</packaging>设置为pom,统一管理多个pom
<modules>
<module>../xx</module>
<module>../xx</module>
<module>../xx</module>
</modules>
十、继承
将<packaging>pom</packaging>设置为pom,子类强制依赖父类所有jar包。
<parent>
<artifactId>xxx</artifactId>
<groupId>xxx</groupId>
<version>xxx</version>
</parent>
十一、继承管理
父类通过dependencyManagement申明依赖所有的jar包,子类不直接继承所有jar包,必须手动指定依赖的jar包。
<dependencyManagement>
<dependencies>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.5.RELEASE</version>
</dependencies>
</dependencyManagement>