题
我不知道我是否完全误解了这个概念,但是我想创建几个与其他项目有关的项目,这些项目不是父母项目目录结构的一部分。我知道这样做的正常方式是使用从某些外部存储库中获取的外部依赖性。但是在这种情况下,在项目中,开发了“ F”一个框架,该框架已在项目“ P”中使用,然后P使用F,但是F应该不一定是P的子项目,因为P是P IS仅用于测试F的开发(但不仅是单位测试)。在此过程的稍后,当F稳定时,F会分开,并且可以通过存储库来消耗其他项目。但是,在使用P作为测试案例的F开发F期间,如果可以省略通过存储库的往返行程,那将是很好的。
更糟糕的是,对于初步开发,有一个以上的测试驾驶消费者项目,所有这些项目都需要对F有依赖性,但不能通过外部存储库。
我的想法是在磁盘上以其自己的git稳定率在磁盘上的某个地方开发F。其他P类项目位于磁盘上的其他地方,并具有基于本地文件系统的依赖性。如果是这样,我应该从哪里开始?我扫描了Java示例,但找不到适当的示例。
有任何想法吗?
解决方案
Gradle项目层次结构是完全虚拟的。它的默认值是物理位置对应于虚拟层次结构。但是您可以完全控制这个。看: http://gradle.org/0.9-rc-1/docs/userguide/build_lifecycle.html#sec:settings_file
关于您的其他想法,请看以下JIRA: http://jira.codehaus.org/browse/gradle-1014
其他提示
您可以考虑这样的文件夹层次结构:
Main folder
|- F folder
| |- .git
| |- sources
| |- build.gradle (with parts specific to F)
|- P folder
| |- sources
| |- build.gradle (with part specific to P)
|- build.gradle (with common parts)
|- settings.gradle
因此,您始终可以决定在F项目,P项目或两个全能的两个项目上运行Gradle。它还可以让您在没有P或任何其他附带项目的情况下独自促进F项目。
有关更多最新信息,请检查 多项目建立章节 Gradle文档。