“src/main/java”约定的优势是什么?
2022-08-31 15:51:14
我注意到很多项目都有以下结构:
- 项目-A
- 站
- 自由
- 来源
- 主要
- 爪哇岛
- 根级别包类.java
- 爪哇岛
- 主要
我目前使用以下约定(因为我的项目是100%java):
- 项目-A
- 站
- 自由
- 来源
- 根级别包类.java
我目前没有使用Maven,但我想知道这是否是Maven的约定,或者是否有其他原因。有人可以解释为什么第一个版本现在如此受欢迎,以及我是否应该采用这个新惯例?
克里斯
我注意到很多项目都有以下结构:
我目前使用以下约定(因为我的项目是100%java):
我目前没有使用Maven,但我想知道这是否是Maven的约定,或者是否有其他原因。有人可以解释为什么第一个版本现在如此受欢迎,以及我是否应该采用这个新惯例?
克里斯
主要好处是将目录作为子目录,其目录结构与中的目录结构相同:test
src
main
的所有包私有方法都将是可见的,即可从 进行测试。由于测试代码也是源,因此其位置应位于目录下。RootLevelPackageClass
TestRootLevelPackageClass
src
是的,这是Maven公约。
即使您的项目是100%的Java(顺便说一句,Maven的典型情况),您通常也有资源文件(根据Maven约定转到),或Web应用程序的东西,或者......所有这些都很容易适应Maven系统。src/main/resources
如果您对当前的构建系统(无论它是什么)感到满意,则没有理由切换到Maven。否则,或者如果开始一个新项目,您可以评估您的选项,包括Maven。