Maven

1.maven简介

        分两部分:软件(管理jar包)和仓库(存放jar包)

        核心功能:项目构建(maven管理项目从生到死的一个生命周期)

        仓库:(本地仓库 , 远程仓库(私服) , 中央仓库)

        maven是通过坐标(groupId和artifactId还有version)来定位和管理jar包

        好处:

                节省磁盘空间,

                一键构建项目

                跨平台

                应用在大型项目上提高开发效率

2.maven安装:

        maven软件解压即安装

        配置环境变量

        在config中配置 本地仓库还有镜像

3.idea中配置maven:

        配置maven软件位置

        配置maven配置文件位置

        配置本地仓库位置

4.创建项目推荐不使用骨架(项目结构目录更完整一些)

5.maven项目构建:

①lifecycle:生命周期

        validate : 验证 , 验证项目是正确的,所有信息是可用的

        clean : 清理 , 清除字节码文件(删除缓存,一般是删除target文件夹(编译的字节码文件))

        compile : 编译 , 将.java源文件编译为.class字节码文件,放在target文件夹中

        test : 测试 , 运行test目录下所有的单元测试,并生成测试报告

        package : 打包 , 根据pom文件中的packaging方式打成jar包或者war包

        verify : 验证 , 运行任何检查,看包是否达到正确和质量要求

        install : 安装 , 将打的包放入本地仓库,供其他项目依赖

        site : 生成一个web站点,发布项目相关信息

        deploy : 远程发布,将最终包发布到远程库.

执行后面的命令会依次执行前面的命令.

②plugins:插件(内置的插件就是生命周期指令的包装)

③dependencies: 依赖

6.maven依赖的scope(依赖范围): 当前jar包的作用范围

        compile : 任何时候都有效 spring-core包

        test : 只在测试的时候生效 junit包

        runtime : 编译期无效,测试和运行时有效 jdbc驱动包

        provided : 编译期和测试期有效,运行时无效(因为运行的时候tomcat自带了,所以不需要了,servlet -api)

        system : 本地的,maven仓库之外的类库

7.maven依赖的问题

        依赖传递 : A依赖B,B依赖C,那么A就依赖C

        依赖冲突 : 不同的jar包同时依赖一个jar,但jar包版本不同造成依赖冲突.

        解决方法:

                第一声明优先原则 : (在pom文件中定义,先声明的依赖为准)

                路径近者优先原则 : 把有依赖冲突的jar包直接依赖进来

                排除依赖原则 : 在大依赖中排除掉有冲突的依赖(用<exclusions><exclusion>)

                锁定版本 :

8.maven私服:

        公司在自己的局域网内搭建自己的远程仓库服务器叫做私服 . 私服服务器即是公司内部的maven远程仓库,每个员工的电脑上安装maven软件并且连接私服服务器,员工将自己开发的项目打成jar并发布到私服服务器,其它项目组从私服服务器下载所依赖的构件(jar)。

        私服还充当一个代理服务器,当私服上没有jar包会从互联网中央仓库自动下载

9.maven远程仓库:nexus

                      私服搭建

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值