task buildProjB {
inputs.file file('my_source_file.name')
ext.dest = new File(buildDir, "libs")
outputs.dir ext.dest
doLast {
// Run your program and put output in "libs" subdir
}
}
tasks.whenTaskAdded { theTask ->
if (theTask.name.contains("assemble")) {
theTask.dependsOn "buildProjB"
}
}
1 回答
您可以通过在项目B中创建自己的自定义任务来执行此操作,以执行生成JAR的程序 . 确保正确声明输入/输出,以便Gradle知道如何处理任务的依赖关系:
请注意,
buildProjB
任务获取"hooked"任何assemble
任务 . 您可能需要执行此操作或执行build
任务之一,以便将其作为正常Android应用程序构建的一部分正确构建 .在项目A
settings.gradle
中,将项目B作为构建的一部分:在项目A
build.gradle
文件中,使项目B成为依赖项:假设您在顶级Android Studio项目下面有项目B(Android Studio术语中的模块),因此与项目A处于同一级别 .