maven学习笔记
链接: eclipse安装包下载慢问题.
链接: maven安装.
链接: Eclipse中使用maven.
1、核心概念:
约定的目录结构、POM、坐标、依赖、仓库、生命周期/插件/目标、继承、聚合
2、 目录结构:
3、常用命令:
4、关于联网问题
5、POM文件内容
<project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
//坐标
<groupId>com.companyname.project-group</groupId>
<artifactId>project</artifactId>
<version>1.0</version>
</project>
6、坐标
7、依赖
provided与compile对比
7.1依赖的传递性:
加入的某个依赖叫直依赖,如果这个依赖下还有依赖,则这些依赖都会加入本项目中。好处:可以传递的依赖不必在每个模块工程中都重复声明,在最下面的工程中依赖一次即可。注意:test、provided防范是本工程的,不进行依赖传递。也就是说非complie范围的依赖不能传递,所以在各个工程模板中,如果需要就等重复声明依赖
7.2依赖的排除:
把附带的依赖排除
排除代码:
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
7.3依赖的原则
1.作用:解决模块工程之间jar包冲突问题
2.情景设定1:路径不一样,路径最短者优先(就近原则)
3.情景设定2:路径相同,先声明者优先(dependency标签声明顺序)
4.依赖版本的统一管理:
使用properties标签内使用定义标签统一声明本版号。
在需要统一的版本位置使用${自定义标签名}引用声明的版本号。
properties配置标签配合自定义声明数据并不是只用于声明依赖版本号,其他的也可以使用。也就是说需要统一声明后再引用的场合都可以使用。
8、生命周期
9、继承
10、聚合
作用:一键安装各个模块工程。
配置方式:在一个总的聚合工程中,配置各个参与聚合的模块
使用方式:在聚合工程上的pom。Xml上点击右键——》run as——》maven install
11、插件的设置
12、Maven酷站:
https://mvnrepository.com/
13、jar包下载慢问题
jar包下载慢问题https://www.jianshu.com/p/7805fe4e652e
14、资源文件无法加载到resuse中的
多出现在IDEA版,eclipse没遇到过