Maven的细节学习

1.maven的基本配置
下载解压maven
在这里插入图片描述
环境变量配置
添加M2_HOME:对应Maven的解压目录即可。
在这里插入图片描述
编辑Path环境变量:
在这里插入图片描述
在cmd窗口输入mvn -v查看
在这里插入图片描述
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:\tools\repository</localRepository>

修改maven默认的JDK版本
在标签下添加一个标签,修改maven默认的JDK版本。

<profile>     
    <id>JDK-1.8</id>       
    <activation>       
        <activeByDefault>true</activeByDefault>       
        <jdk>1.8</jdk>       
    </activation>       
    <properties>       
        <maven.compiler.source>1.8</maven.compiler.source>       
        <maven.compiler.target>1.8</maven.compiler.target>       
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>       
    </properties>       
</profile>

添加国内镜像源
添加标签下,添加国内镜像源,这样下载jar包速度很快。默认的中央仓库有时候甚至连接不通。一般使用阿里云镜像库即可。这里我就都加上了,Maven会默认从这几个开始下载,没有的话就会去中央仓库了。

<!-- 阿里云仓库 -->
<mirror>
    <id>alimaven</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>

<!-- 中央仓库1 -->
<mirror>
    <id>repo1</id>
    <mirrorOf>central</mirrorOf>
    <name>Human Readable Name for this Mirror.</name>
    <url>http://repo1.maven.org/maven2/</url>
</mirror>

<!-- 中央仓库2 -->
<mirror>
    <id>repo2</id>
    <mirrorOf>central</mirrorOf>
    <name>Human Readable Name for this Mirror.</name>
    <url>http://repo2.maven.org/maven2/</url>
</mirror>

2.scope:作用域,范围

<dependency>
    <groupid>org.hamcrest</groupid>
    <artifactid>hamcrest-core</artifactid>
    <version>1.5</version>
    <scope>test</scope>
    
</dependency>

scope常用的关键字:
compile:参与开发,测试,部署,运行
test:只参与测试
provided:参与开发,测试,不参与部署运行(由服务器支持运行如servlet-api)

在这里插入图片描述
scope最容易出现jar包冲突问题,注意compile的使用

3.maven的坐标
在这里插入图片描述

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.1.9.RELEASE</version>
</dependency>

在这里插入图片描述
4.仓库
私服:架设在当前局域网,为网中所有Maven工程服务
在这里插入图片描述
访问顺序是:用户访问私服找jar包,私服没有,那么私服就在网上下载,此后就有了这个jar包了
中央仓库:架设在Internet上,为全世界所有maven项目服务
中央仓库的镜像:架设在各大洲,为中央仓库分流,减轻中央仓库压力
在这里插入图片描述

5.dos窗口或者命令操作常用:
在这里插入图片描述

6.在maven项目A里导入其他maven 项目B
第一步
右击B项目的pom文件,run as maven——》install。这样就将项目加入到了我们的maven仓库。
第二步:
在A的pom文件中,导入B的pom文件中的坐标。就可以了。

这样以后,就会发生传递依赖,即B中的默认作用域的jar包(compile)会出现在A中,其他不会传递,前提是A中本来没有指定这个jar包。
依赖的传递顺序是:就近原则,如果有两个项目与A项目距离一样,那么谁先加入到A项目中,就用谁。
在这里插入图片描述
其实就是类似于多继承,子类可以拥有父类所有方法,子类可以重写父类方法

7.依赖排除:用于不想导入依赖的jar包
在这里插入图片描述
这也是可以传递的,即“子类”也会不导入排除的依赖

8.统一管理版本号
用properties标签设置版本号
在这里插入图片描述
用EL表达式调用
在这里插入图片描述
9.将junit版本管理提取到父工程,子工程不指定版本号
在这里插入图片描述
(1)在这里插入图片描述
(2)在这里插入图片描述(3)在这里插入图片描述
(4)
在这里插入图片描述
(5)在这里插入图片描述

10.聚合
作用:一键安装各个模块到本地仓库
配置方式:在一个总的聚合工程中配置各个参与聚合的模块
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值