项目共享会是一个怎样的问题呢?
场景一:
不一定每个人都能够顺利地安装、用得好好某一个软件,曾经遇到某个同学使用 MyEclipse 进行开发,但是组员没有正版的 MyEclipse ,安装盗版也不成功。而 MyEclipse 的项目不能直接在 Eclipse 中打开,导致了问题的出现。
场景二:
即使所有成员都使用某一种工具,例如 Eclipse 。而对于使用 Eclipse 生成的项目来说,其元数据就包括 .project 以及 .classpath 等,这些数据记录着项目与当前系统相关的一些基本信息(依赖的包的位置、项目的特定设置),每个人的电脑可能都不一样,特别是依赖管理。
如果共享的时候删除这些信息,那么 Eclipse 将不认识这个项目;如果不删除,那么这里的路径和本机路径也明显对不上……
场景三:
每个项目单独传递一些明显公用的包,例如 Spring 框架的包。传输不方便。一些依赖包可占到 10M 大小的空间。
针对以上三个问题,实际上需要解决的是 3 个问题:
- 自动管理项目用到的依赖库。
- 配置文件独立存储(与源码分隔以便于管理)。
- 不保留与当前系统(开发工具)相关的信息。
建议使用 Maven 进行项目管理。目前来说,所有 IDE 基本都提供对 Maven 结构的项目的支持。Maven 仅保留项目最原始的数据:源码、配置文件、依赖库信息。详情可以参阅: