maven系列:实践中理解“约定优于配置”
2016-03-25 22:00
281 查看
在学习maven时常会注意到一句“约定优于配置”,此处的“优”应当是优先的意思。这句话的意思能理解,但背景或原因之类的却不是很理解,直到最近。
最近有一个在做一个基于react js的web项目,由于POC阶段创建的项目是一个普通的eclipse下的dynamic web project,在转入正式项目后,需要转成maven项目(别问为什么一开始没有创建成maven项目,我也不知道)。前面一篇博文都提到几个步骤转成maven项目,即主要是.project和.classpath文件的修改。改好后一个问题来了,是继续沿用老的dynamic web project的目录结构还是改成maven的目录结构?
由于项目已经git上做代码控制,为了减少团队上传下载工作量,第一选择是沿用老的目录结构。但这样选择的结果就是需要在pom.xml中各种配置,比如source code,test code等,而maven-tomcat-plugin也有一堆配置,不胜其烦,然后团队中熟悉maven的同事同步代码后各种嫌弃。最后还是改成了标准的maven目录结构,各种定制化配置也随之删除,pom.xml也简洁了,看起来也顺眼了。
至此,突然明白了“约定优于配置”的意思:你可以在maven下随意安排你的项目,然后用各种细节配置来让maven了解你的随意安排,但你也可以按照maven约定来组织你的项目,并且maven推荐你按约定来。
最近有一个在做一个基于react js的web项目,由于POC阶段创建的项目是一个普通的eclipse下的dynamic web project,在转入正式项目后,需要转成maven项目(别问为什么一开始没有创建成maven项目,我也不知道)。前面一篇博文都提到几个步骤转成maven项目,即主要是.project和.classpath文件的修改。改好后一个问题来了,是继续沿用老的dynamic web project的目录结构还是改成maven的目录结构?
由于项目已经git上做代码控制,为了减少团队上传下载工作量,第一选择是沿用老的目录结构。但这样选择的结果就是需要在pom.xml中各种配置,比如source code,test code等,而maven-tomcat-plugin也有一堆配置,不胜其烦,然后团队中熟悉maven的同事同步代码后各种嫌弃。最后还是改成了标准的maven目录结构,各种定制化配置也随之删除,pom.xml也简洁了,看起来也顺眼了。
至此,突然明白了“约定优于配置”的意思:你可以在maven下随意安排你的项目,然后用各种细节配置来让maven了解你的随意安排,但你也可以按照maven约定来组织你的项目,并且maven推荐你按约定来。
相关文章推荐
- 【转】 SumaTra PDF 常用快捷键
- 求数组中的最大子数组1
- jQuery on的用法
- Markdown编辑器攻略——字体,字号,颜色
- 查看mysql安装版本
- 生成的API分析文件太大。我们无法在交付前验证您的API使用信息。这只是通知信息。
- Javaweb实训项目中使用到的ajax
- 虚拟机外网不通的一点解决方法
- 快速排序
- iOS9以后 GDataXMLNode修改方式
- Linux学习笔记<三>
- 数据结构——循环单链表和双向链表
- 数据结构实验之链表九:双向链表
- ListView 适配器BaseAdapter配置
- Trick(十三)—— 数学与函数
- 仿知乎日报列表-加载网络数据
- Ubuntu下的抓包工具tcpdump
- 35. Quartz 2D初探
- tcpdump抓取HTTP包
- Tomcat在Linux上的安装与配置