我有5个productFlavors
,其中每个都有自己的jar依赖关系,我需要在构建时添加它。在我搜索过的每个地方,人们都说要将以下内容添加到依赖项中:
dependencies {
//Third party jars
compile fileTree(include: ['*.jar'], dir: 'libs')
}
但是,这似乎是在创建每个jar之前执行的,因此在我第二次运行构建过程之前它不能成功编译任何东西。以下是我制作罐子的方法:
android.applicationVariants.all { variant ->
/** Lets build our thrift tasks for each productFlavor **/
//Find pre-existing buildThrift task or create new one
def String taskName = "buildThrift${variant.productFlavors[0].name}"
def Task buildThrift = tasks.findByName(taskName)
if (!buildThrift) {
buildThrift = task "$taskName"(type: Exec) {
workingDir rootDir
commandLine './thrift-gen.sh'
}
}
variant.javaCompile.dependsOn(buildThrift)
}
我错过了什么?或者我的想法在这里甚至无法开始工作?
答案 0 :(得分:0)
如果我理解正确,您将以编程方式创建jar文件,并希望在运行时在build.gradle中添加相同的文件。如果是这种情况,似乎不可能,因为在构建gradle项目时,它会编译所有依赖项。
作为替代方案,您需要单独创建jar,然后将它们添加到gradle项目中。
希望这对你有所帮助。
由于 Anurag