避免在java项目中使用深层目录结构

时间:2014-09-30 22:41:47

标签: java ant directory-structure

例如在ant的帮助下,是否有可能避免深度包嵌套带来的深层目录结构?

假设我在com.domain.name包中编写了ClassA和ClassB,是否可以避免像

这样的目录布局
project/
- build.xml
- src/
  - com/
    - domain/
      - name/
        - ClassA.java
        - ClassB.java

然后选择更简单的

project/
- build.xml
- src/
  - ClassA.java
  - ClassB.java

1 个答案:

答案 0 :(得分:1)

不鼓励这种结构的原因是它不能很好地扩展。您的示例仅限于在同一个包中包含两个类。当你在不同的包中或具有不同的包装系列时会发生什么?

For example
project/
- build.xml
- src/
  - com/
    - domain/
      - package1/
        - ClassA.java
        - ClassB.java
      - package2
        - ClassC.java

对于中等规模的项目(甚至是小型项目),这可以更加维护。您建议的替代方案已经让人感到困惑,因为它根本不会传达结构。

For example
project/
- build.xml
- src/
    - ClassA.java
    - ClassB.java        
    - ClassC.java

至于你的更大问题是否可能',Java并没有强制要求目录结构与包结构匹配,尽管约定很强。见Package name is different than the folder structure but still Java code compiles