Gradle子项目名称与文件夹名称不同

时间:2013-11-21 17:55:14

标签: gradle directory subproject

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

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

谢谢,

1 个答案:

答案 0 :(得分:66)

项目名称只能在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")

为了给出一些背景知识,includeincludeFlat之间的唯一区别是它们为项目projectDir使用了不同的默认值。否则他们是一样的。

有关详细信息,请查看Gradle Build Language Reference中的Settings