maven学习期间的感想

        关于maven的学习,我有一个难受的开局,我说的难受,并不是maven的学习内容让我难受,而是在配置maven环境中碰到了很多问题,并不能仅仅通过看一篇博客解析就能解决。就比如在编写文件时,文件中会自动添加换行符^M,我的计算机不能识别,需要自己去更换;还有就是JAVA_HOME地址指代不明确,也是需要自己在去查相关内容。

       上面俩个问题在原来的maven环境配置的博客中并没有,但它蹦出这样的问题,我们也只能尽可能的去看懂问题代码,然后去查看相关博客去解决它。在经过2天的2个小时后,我终于解决了。这次问题的解决不仅让我心情变得非常舒畅,还让我有了更多信心去解决未来会出现的我从来没见过的问题。

      下面就开始我的maven学习进程。

1.     maven本质是一个项目管理工具,它是用Java书写的,所以它的思想也是面向对象,把项目开发过程抽象成一个对象模型,我们可以叫它pom。

        maven包括构建项目对象模型,依赖管理,构建生命周期和插件。

         构建项目对象:就是把项目开发过程抽象成一个对象,也就是pom。

         依赖管理:在我们开发我们的项目的时候,我们肯定会用到其他人的jar包或模块等资源,依赖管理会帮助我们管理这些资源。在我们的项目完成后,也可以作为一个资源,通过依赖管理被其他项目调用。

         生命周期:指项目开发的整个过程,它包括开发过程中的各个阶段。生命周期本身没有任何功能,它的每个阶段都会有一个或多个插件,它的功能通过插件运行。生命周期可分为3套:1,clean,清理工作;2,default,核心工作,例如打包,编译;3,site,生成报告。每一套都包含许多小步骤,这些步骤都有固定顺序,当我们运行其中一个小步骤时,它前面的所有步骤都会运行,

         插件:就是jar包或源代码,其实,插件才是实现我们需要功能的存在,maven只是我们构建的模型框架。一个插件可以同时被多个生命周期依赖,一个生命周期也可以依赖多个插件。一个插件的功能很单一,但多个插件联合起来,我们就可以做各种各样的事了。

2.         而插件会被存储在仓库中。

     中央仓库:我们所使用的插件中的jar包等资源,都会被存储到仓库中,我们需要的时候直接下载就可以了。99%的资源都被存储在云端,存储jar包资源的位置就是中央仓库。剩余的1%是每个公司自己开发的资源,没有上传中央仓库,没有共享。

    本地仓库:我们把资源从中央仓库中下载下来后,就需要存储在我们自己电脑的仓库中,这个仓库就是本地仓库。我们仅仅会把我们需要的资源下载下来放到本地仓库中,所以本地仓库是中央仓库的子集。

     私服:一个公司中,很多项目都需要资源,当多台计算机同时下载资源的话,网络会变的薄弱,会浪费很多时间。所以我们需要创建一个私服仓库,我们把需要的所有资源都从中央仓库下载到私服中,个人需要资源时,直接从私服拿就可以了。

 3.             依赖有依赖传递属性,可分为直接依赖和间接依赖。

     依赖传递:我们构建项目需要别人的jar包,当别人的jar包更新后,我们依赖的jar包也会实时变化。

     直接依赖:我们亲自手动依赖的jar包,为直接依赖。

     间接依赖:我们依赖的jar包也依赖了另一个jar包,我们项目与这另一个jar包为间接依赖。

               依赖传递也会造成很多问题。

      依赖中出现了相同资源的不同版本。解决办法:1,路径优先,依赖距离我们的项目近的,中间依赖次数少的,就是就近原则。2,声明优先,如果距离相同,那就看他们的上一个依赖(就是距离我们项目近一点的),谁先配置用谁的。

                上面大部分都是maven初级的学习内容,而maven高级的学习,需要先学习SSH框架,所以我就暂停了maven高级的学习,直接进入了通过Java直接操作数据库的学习中了。

  

         

      

      

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值