我有一个包含不同库模块的android项目。我定义了一个将工件上传到Maven仓库的任务。当我直接在模块的build.gradle
中定义它时,它可以工作。我想要做的是在父母build.gradle
中定义一次任务,并在每个模块中重复使用它。如何为几个子模块定义gradle任务?
我跟着引导here写出下列构建配置:
我的项目设置是这样的:
parent_project
|- module1
|- module2
|- module3
父/的build.gradle,默认
subprojects {
task installToLocalMaven(type: Upload) {
description "Installs artifacts to local Maven repository"
configuration = configurations['archives']
repositories {
mavenDeployer {
pom.groupId = commonGroupId
pom.artifactId = artifactId
pom.version = gitBranch() + '-' + android.defaultConfig.versionName
if (android.defaultConfig.versionName.endsWith("-SNAPSHOT")) {
snapshotRepository(url: repositories.mavenLocal().url)
} else {
repository(url: repositories.mavenLocal().url)
}
}
}
}
}
project(':module1') {
ext.artifactId = "module1"
}
...
执行gradlew :module1:installToLocalMaven
线索对此错误Configuration with name 'archives' not found.
我假定使用父项目的配置对象。
如何确保从父母build.gradle
内使用子模块的配置对象?
你见过gradle-fury了吗?看起来像它所做的一切,你需要更多 – spy