71

我有几个子项目是多项目构建(平面层次结构)的一部分。我想将它们的名称设置为与其文件夹名称不同。但是,在 include (settings.gradle) 中,它必须具有文件夹名称,否则将找不到它(对于compile project(':ProjectName').

如果我尝试设置project.name它告诉我这是只读的。原因是我们正在从 Ant 转换并希望为 Eclipse IDE 保留相同的名称。就工件而言,我们jar.artifactName用来设置我们想要的任何名称。

谢谢你。

4

2 回答 2

109

项目名称只能在settings.gradle. 例如:

include "foo" // or `includeFlat`, doesn't matter

// always good to nail down the root project name, because
// the root directory name may be different in some envs (e.g. CI)
// hence the following even makes sense for single-project builds
rootProject.name = "bar" 

// change subproject name
project(":foo").name = "foofoo"

include或者,您可以在语句中使用所需的项目名称,然后重新配置项目目录:

include "foofoo"

project(":foofoo").projectDir = file("foo")

include为了提供一些背景知识,和之间的唯一区别includeFlat是它们对项目的projectDir. 否则它们是相同的。

Settings有关更多信息,请查看Gradle 构建语言参考

于 2013-11-21T18:10:46.587 回答
0

这是 Kotlin DSL 相当于Peter Niederwieser的答案。

settings.gradle.kts

rootProject.name = "MyApp"

include(":Narengi")
project(":Narengi").name = "Bunny"

// OR

include(":Bunny")
project(":Bunny").projectDir = file("Narengi/")
于 2022-02-18T13:54:46.467 回答