51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1747|回复: 6
打印 上一主题 下一主题

【Maven】——初识Maven

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-6-19 16:49:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【Maven】——初识Maven现在做的项目中使用Maven来进行管理,之前只是听说过,还没有用过。现在每天都在用这个,必然要对它进行了解一番。



      一、Maven是什么?



      Maven在美语中的意思是“专家”,但这个单词最早来自于犹太语,意思是“知识的积累”,最初在项目中用来简化构建过程。在学习J2EE 的时候,我们学习过Ant,那也是一个项目管理和自动构建工具。当时有一些项目,仅有细微的差别,Jar包都是通过CVS工具来进行维护的。于是我们希望有一种标准化的方式构建项目,能够管理任何基于Java的项目,可以让我们的程序员的日常工作简单化,帮助他们对Java项目的理解。所以,我们Maven这个工具就产生了。



     二、Maven的特性



主要目标:允许开发人员在最短的时间内理解开发工作的完成状态,为了实现这一目标,Maven可以处理以下这些问题:



1、使构建过程简单化



虽然,使用Maven,我们还是需要了解底层机制,但是Maven提供给我们很多详细信息。



2、提供统一标准的构建系统



Maven允许构建一个项目时使用POM模型和一组被所有项目共享使用的Maven插件,来提供一个统一的构建系统。一旦你对Maven熟悉以后,当你使用Maven来构建许多项目时,你就会发现它能够节省你大量构建时间。




3、提供优质的项目信息



Maven项目提供了大量的有用信息,这些信息在一定程度上来自于你的POM和部分项目资源。例如Maven可以提供:

更改直接从源代码控制创建的日志文件;

邮件列表;

交叉引用资源;

包含覆盖的单元测试报告;

所有Maven提供的有用信息集合,都对用户是透明的。


4、为最好的实践发展提供指导



Maven为更好的实践发展收集当前的原则,从而能够更简单的去指导一个项目的构建。例如,规范,执行和单元测试报告都是Maven构建的一部分。

Maven还旨在协助项目工作流的发布管理,问题跟踪等。Maven也表明提供一些建议,应该如何对我们的项目结构进行布局。一旦你学会了布局之后,以后遇到任何项目,你都能够轻松的管理项目结构。



5、允许透明迁移到新特性



Maven客户端提供了一种简单的方式来更新安装,从而能够获取Maven的改变的新特性或者是安装新的文件,以及更新第三方插件,都是非常简单的。


三、Maven的缺点


虽然Maven鼓励最佳实践,但我们发现,一些项目可能不符合这样去做。虽然它的设计已经非常灵活了,但是在某种程度上,它不能满足所有项目的需要。

如果你使用Maven来管理你的项目,有一个不寻常的构建结构使你不能进行重组,使你可能不得不放弃一些功能的使用。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情

    2024-5-20 21:29
  • 签到天数: 996 天

    连续签到: 1 天

    [LV.10]测试总司令

    2#
    发表于 2019-6-20 10:35:02 | 只看该作者
    对于测试来说,Maven需要掌握到什么程度?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    3#
    发表于 2019-6-20 13:33:39 | 只看该作者
    清楚基本原理,能使用就好了吧,一般也就构建项目需要使用到
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-9 09:28 , Processed in 0.072169 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表