Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.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_Svn_Maven 2_Continuous Integration_Build Process - Fatal编程技术网

Java 理想的项目布局是什么样的?

Java 理想的项目布局是什么样的?,java,svn,maven-2,continuous-integration,build-process,Java,Svn,Maven 2,Continuous Integration,Build Process,对于一个新项目,我想使用maven-2和subversion 这些要求是: 项目应作为一个subversion文件夹签出 Maven应该使用超级pom构建所有模块 创建分支应该很容易(一个操作) 它应可用于连续集成(例如hudson) 使用此布局,似乎只需一个操作即可创建分支 project/trunk/module-1 project/trunk/module-2 project/trunk/module-2.1 project/branches project/tags .. proj

对于一个新项目,我想使用maven-2和subversion

这些要求是:

  • 项目应作为一个subversion文件夹签出
  • Maven应该使用超级pom构建所有模块
  • 创建分支应该很容易(一个操作)
  • 它应可用于连续集成(例如hudson)
使用此布局,似乎只需一个操作即可创建分支

project/trunk/module-1
project/trunk/module-2
project/trunk/module-2.1
project/branches
project/tags

..
project/trunk/module-n
或者我应该更喜欢(如果是的话,为什么)这种布局? 恐怕我需要尽可能多地分支模块

project/module-1/trunk
project/module-1/branches
project/module-1/tags

project/module-2/trunk
project/module-2.1/trunk

..
project/module-n/trunk

我应该使用哪种布局?

我们使用您提到的第一个选项,如果您只有一个级别的模块,它会非常有效。我们发现,如果有很多级别的子模块(我们曾经有4个级别的子模块),maven会开始感到困惑,并尝试将依赖项从一个模块添加到另一个模块中(这是使用maven 2.2.0)


我不认为第二个选项会满足四个要求(特别是从最顶层的父pom构建整个项目)。

我们使用您提到的第一个选项,如果您只有一个级别的模块,它会非常有效。我们发现,如果有很多级别的子模块(我们曾经有4个级别的子模块),maven会开始感到困惑,并尝试将依赖项从一个模块添加到另一个模块中(这是使用maven 2.2.0)

我认为第二个选项不会满足这四个要求(特别是从最顶层的父pom构建整个项目)