我开始使用Gradle进行多项目。但是,Gradle手册没有给出关于子项目命名的最佳实践的许多提示。
我有一个名为'datalogger'的多项目,它包含两个子项目'核心'和'条目':
- datalogger
--- core
--- entries
当我构建项目时,我得到了jar的core-1.0.jar'和'entries-1.0.jar'。如何以通用方式管理命名为'datalogger-core-1.0.jar'和'datalogger-entries-1.0.jar'?我知道,我可以按如下方式更改文件夹的名称:
- datalogger
--- datalogger-core
--- datalogger-entries
但我认为这不会被视为好方法。我也可以手动更改每个项目的archivesBaseName
。但是,如前所述,我宁愿找到一种以通用方式执行此操作的方法。
答案 0 :(得分:8)
subprojects {
tasks.withType(Jar) {
baseName = "datalogger-$project.name"
}
}
或者,您可以以类似的方式设置archivesBaseName
。
答案 1 :(得分:1)
我们通过重命名子项目来处理这个问题,在创建/命名你的罐子时会考虑新的名字: 参考:how to rename the project in gradle instead of using folder name?
include 'xxx', 'yyy'
rootProject.children.each { it.name = rootProject.name + it.name }