ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

什么是Maven(部分翻译)

2022-01-25 17:04:11  阅读:193  来源: 互联网

标签:翻译 项目 提供 单元测试 Maven 构建 源代码 部分


原文链接:https://maven.apache.org/what-is-maven.html#

Maven是什么,以及它核心思想

Maven的本质是一个项目管理工具,

它同样应用了面向对象的思想,它把项目开发和管理的过程抽象成一个项目对象模型(POM,Project Object Model)。具体而言,应用maven相当于下载了一个类似于git的命令行工具——mvn

根据它的官方介绍,Maven的主要目标是允许开发人员在最短的时间内理解一个开发工作的完整生命周期( the complete state of a development effort)。为了达到这个目标,Maven处理了几个需要关注的领域:①简化构建过程;②提供统一的构建系统;③提供优质的项目信息(https://mvnrepository.com/);④鼓励更好的发展实践

简化构建过程

虽然使用Maven并不能消除了解底层机制的需要,但Maven确实让开发人员避开了许多细节。

提供统一的构建系统

Maven使用它的项目对象模型((POM))和一组插件构建一个项目。一旦熟悉了一个Maven项目,就知道了所有Maven项目是如何构建的。这节省了在许多项目中探索的时间。

提供优质的项目信息

Maven提供有用的项目信息,这些信息部分来自POM,部分来自项目的源代码。例如,Maven可以提供:

  • 从源代码控制中直接创建的更改日志(Change log created directly from source control)
  • Cross referenced sources
  • 由项目管理的邮件列表
  • 项目使用的依赖项
  • 包含覆盖率的单元测试报告

第三方代码分析产品还提供Maven插件,可以将它们的报告添加到Maven提供的标准信息中。

为最佳实践开发提供指导方针

Maven的目标是收集最佳实践开发的当前原则,并使项目朝着最佳实践的方向演变变得容易。

例如,规范、执行和报告单元测试是使用Maven的正常构建周期的一部分。目前的单元测试最佳实践被用作指导方针:

  • 将测试源代码保存在独立但并行的源代码树中
  • 使用测试用例命名约定来定位和执行测试
  • 让测试用例设置他们的环境,而不是为测试准备定制构建

Maven还协助项目工作流程,如发布和问题管理。

Maven还就如何布局项目的目录结构提供了一些指导原则。学习了布局之后,就可以轻松地浏览其他使用Maven的项目了。

虽然对项目布局采取了一种固执的方法,但由于历史原因,一些项目可能不适合这种结构。虽然Maven被设计成可以灵活地满足不同项目的需求,但它不能在不牺牲其目标的情况下满足每种情况。

如果您的项目有一个不寻常的、无法重新组织的构建结构,那么您可能不得不放弃一些特性,或者干脆不使用Maven。

标签:翻译,项目,提供,单元测试,Maven,构建,源代码,部分
来源: https://www.cnblogs.com/xkxf/p/15843664.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有