1. 为什么写这篇文章
在之前的javaSE开发中,没有很关注Eclipse工程目录下的环境,总是看见一个src就点进去新建一个包再写一个class。以后的日子中也没有机会注意到一个工程到底是怎么组织的这种问题,更不要说自己试试怎么控制了。
但是最近在学习Maven的时候知道了它对工程的目录结构有要求,也就是所谓的“惯例优于配置”。有一个被绝大多数人认可的java工程的目录结构被确定下来。这样统一了市面上各种复杂配置的工程。于是我便重新开始查资料,看看别人到底如何安排一个优秀的工程框架的。
同时,我也分析了Eclipse会给一个项目生成什么配置文件,其中的内容和意义又是什么.这样能心里面大致有个数,本地的什么文件是干什么的,怎么来的。
2. 一个简单的J2SE工程目录结构
首先,Mac中,一个默认的Eclipse工程的目录结构:
MyProject:工程的名字
src:一个源文件文件夹
com.jd.MyProject:一个包。一般是倒写的域名保证其独一无二性。
Main.java:一个java文件。
看上去就这么多?其实不是的,在我的mac环境下,一般时候Eclipse左边的目录是Package Explorer,也是是如上图显示的内容。但是其实可以用另外一个显示其真正的目录,也就是包含一些隐藏文件。叫Navigator(事实上Package Explorer默认隐藏Linux系统下的以.开头的隐藏文件,所以看不见,而Navigator默认打开)。显示效果如下:
3. 为什么Eclipse能认出来这些?
那么除了这些之外,其实还有值得探究的部分:
为什么Eclipse能识别出这个一个Maven工程?
Eclipse怎么识别Source Folder?
这些问题可以提出很多,其实本质上都是:Eclipse是一个集成开发环境,而Maven是一种项目管理及自动构建工具(维基百科),Eclip