Gradle:如何使用并排项目配置多项目设置
Posted
技术标签:
【中文标题】Gradle:如何使用并排项目配置多项目设置【英文标题】:Gradle: How to configure multiproject setup with side-by-side projects 【发布时间】:2011-10-23 03:34:57 【问题描述】:我们有一个像这样设置的旧项目:
.
├── customizationProject
│ ├── ejb
│ └── services
├── projectA
│ ├── ejb
│ └── shared
├── projectB
│ └── ejb
└── projectC
├── ejb
└── services
这个想法是,customizationProject 是交付应用程序的最终组装发生的地方,实际上可能有多个customizationProjects
,它们可能包含多个配置。然而,这不是我想要解决的问题。
我想让customizationProject 成为gradle 项目的逻辑根项目。 如何配置各个项目,以便他们 a) 知道它们是多项目构建的一部分 b)可以正确执行,具有不同的范围,例如只运行一个子项目的测试,同时还允许在所有项目中执行所有测试?
【问题讨论】:
这个项目目前是使用不稳定的 ant 脚本构建的,它对依赖关系一无所知。我想将它迁移到 gradle... 【参考方案1】:这是一个相当容易被 Gradle 支持的结构。将 settings.gradle 文件添加到您的自定义项目目录中,其中包含以下内容:
includeFlat 'projectA', 'projectB', 'projectC'
您可以从命令行确认项目结构:
$ gradle projects
:projects
------------------------------------------------------------
Root Project
------------------------------------------------------------
Root project 'customizationProject'
+--- Project ':projectA'
+--- Project ':projectB'
\--- Project ':projectC'
includeFlat 方法的描述可以在Gradle documentation 中找到。
希望有帮助!
【讨论】:
重要提示:需要在customizationProject
(settings.gradle文件所在的位置)目录下运行gradle,否则找不到项目。
记得在你的依赖部分为每个项目添加一行:compile (project(':projectA'))以上是关于Gradle:如何使用并排项目配置多项目设置的主要内容,如果未能解决你的问题,请参考以下文章
如何使用单个build.gradle配置向kotlin多平台项目添加依赖项
Gradle:如何在java中以编程方式声明对项目特定配置的依赖关系
如何使旧的 Eclipse 项目在带有 Gradle 的 Android Studio 上运行? [关闭]