Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对Java中包命名约定和项目管理的质疑_Java_Package_Project - Fatal编程技术网

对Java中包命名约定和项目管理的质疑

对Java中包命名约定和项目管理的质疑,java,package,project,Java,Package,Project,我对Java中的包命名有点困惑 我知道建议在包名的开头加上域名,如: com.aimforthebush.packagename并且有一个与包命名方案相同的文件夹结构:/com/aimforthebusches/packagename 我开始使用IntelliJ,当创建一个项目时,默认情况下会创建两个文件夹src和out 我有三个问题: 1.-如果我遵循命名约定,是否意味着我必须在src内创建文件夹结构com.aimforthebush.packagename 2.-我需要为每个项目创建相同的文

我对Java中的包命名有点困惑

我知道建议在包名的开头加上域名,如:
com.aimforthebush.packagename
并且有一个与包命名方案相同的文件夹结构:/com/aimforthebusches/packagename

我开始使用IntelliJ,当创建一个项目时,默认情况下会创建两个文件夹
src
out

我有三个问题:

1.-如果我遵循命名约定,是否意味着我必须在
src
内创建文件夹结构
com.aimforthebush.packagename

2.-我需要为每个项目创建相同的文件夹结构,还是可以将它们全部放在同一个域下?即:

  • /ProjectName/com/aimforthebush/packagename

  • /com/aimforthebusches/projectname/packagename
3.-如果我可以将所有项目放在同一个域名下(因此也是同一个文件夹结构),我如何在IntelliJ上做到这一点


先谢谢你

这种目录结构背后的原因是为了方便地维护较大的项目。如果您的项目没有那么大,并且您希望它不会扩大到更大的规模,那么您可以省略这些约定(我不建议这样做),只需在您喜欢的目录中创建Java文件

您应该阅读更多关于java包和模块的信息

  • 如果您有两个不同的项目,它们应该位于不同的文件夹中,因为它们是两个不同的项目。但是,如果您谈论的是项目中的不同模块,那么可以使用相同的目录
  • 例如,对于单个项目,您可能有以下目录结构,其中
    basic
    objects
    utils
    是同一项目的三个不同模块

    src
        └── org
            └── thisaru
                └── myproject
                    ├── basic
                    ├── objects
                    └── utils
    
  • 不应将两个项目放在同一目录中

  • 创建像/ProjectName/src/com/aimforthebush/ProjectName这样的文件夹结构(再一次)/。。。。将我的所有项目放在一个域结构下不是更简单吗?但是当你有两个大项目,在同一个目录下时,想想看。这将是一个混乱的处理。您的构建脚本将更加复杂,如果您以外的其他人(或您,在一段时间后)将无法区分这两个项目。这是一个非常糟糕的做法。我也不理解你所说的
    冗余。这里的冗余是什么?同名目录?