Maven是一个基于Java平台的项目构建工具。

设计的出发点:

在进行软件开发的过程中,无论什么项目,采用何种技术,使用何种编程语言,我们要重复相同的开发步骤:编码,编译,测试,生成文档,打包发布。实际上除了编写源代码,其他步骤完全是重复一些琐碎的工作,这些琐碎的工作就是构建。

那为什么让软件开发人员去重复这些工作?开发人员的主要任务应该是关注商业逻辑并去实现它,而不是把时间浪费在学习如何在不同的环境中去打包,发布,Maven正是为了将开发人员从这些重复性的任务中解脱出来而诞生的。

Maven的优点/能做什么?

Maven是由早期为Jakarta Turbine定制的构建工具发展而来的,现在成为了一个独立的软件项目管理工具。Maven的优点:

1)Maven抽象了一个完整的构建生命周期模型,帮助我们标准化构建过程,比如:编译,测试,打包等。这使得Maven成为一款优秀的构建工具。

2)Maven不仅仅是构建工具,还是一个依赖管理工具和项目信息管理工具。Maven提供了中央仓库,通过一个坐标,可以自动下载类库并解决依赖问题。此外,Maven对于项目目录结构、测试用例命名方式都有既定的规则,只要遵循这些成熟的规则,在项目间切换的时候就免去了额外的学习成本,可以说是约定优于配置。

本节内容参考《Maven实战》

如何使用Maven:

推荐博文:http://my.oschina.net/huangyong/blog/194583?fromerr=q8uIyIhh

最新文章

  1. .NET 数据类型转换 方法
  2. Nutch2+Hbase环境部署和基本使用
  3. 【项目总结】之——导出Excel
  4. Python 去剑式
  5. NSNumber,NSValue和NSData
  6. 如何在Report Builder中使用fnd_profile.value
  7. ecshop显示所有分类树栏目
  8. 【LeetCode】 Subsets
  9. Tkinter教程之Entry篇
  10. Mingw64编译wxWidgets3.0.2常见错误
  11. 10.18 noip模拟试题
  12. 设计模式--装饰者设计模式(Decorator)
  13. iOS不可变数组的所有操作
  14. 移动端的一些常用meta标签
  15. 2018-2019-2 网络对抗技术 20165237 Exp6 信息搜集与漏洞扫描
  16. 家庭记账本之微信小程序(七)
  17. CF1025D Recovering BST
  18. 领扣-5 最长回文子串 Longest Palindromic Substring MD
  19. [luogu 2458][SDOI2006]保安站岗
  20. php学习十一:组合

热门文章

  1. 实现溢出文本eclipsis的解决
  2. tflearn 实现DNN 全连接
  3. Syncthing搭建
  4. ES5之defineProperty
  5. python之字典【dict】
  6. CentOS 7安装Samba 4.6 版本步骤及错误解决方法
  7. ubuntu 安装 google Gtest
  8. JTemplate学习(一)
  9. Linux升级Ruby
  10. DB2 SQL1477N问题