我有几个子项目,它们是多项目构建(平面层次结构)的一部分。我想将它们的名称设置为不同于它们的文件夹名称。但是,在include(settings.gradle)中,它必须具有文件夹名称,否则找不到它(对于compile project(':ProjectName')
也是如此)。
如果我尝试设置project.name
,它会告诉我这是只读的。原因是我们正在从Ant进行转换,并希望为EclipseIDE保留相同的名称。就工件而言,我们使用jar.artifactName
来设置我们想要的任何名称。
谢谢。
项目名称只能在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
使用了不同的默认值。否则它们是一样的。
有关详细信息,请查看Gradle Build Language Reference中的Settings
。
这是Kotlin DSL等价于Peter Niederwier的答案。
设置.gradle.kts:
rootProject.name = "MyApp"
include(":Narengi")
project(":Narengi").name = "Bunny"
// OR
include(":Bunny")
project(":Bunny").projectDir = file("Narengi/")