Gradle:将变量Jars添加为依赖项

时间:2015-04-15 14:09:31

标签: android gradle android-gradle build.gradle

我有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)
    }

我错过了什么?或者我的想法在这里甚至无法开始工作?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您将以编程方式创建jar文件,并希望在运行时在build.gradle中添加相同的文件。如果是这种情况,似乎不可能,因为在构建gradle项目时,它会编译所有依赖项。

作为替代方案,您需要单独创建jar,然后将它们添加到gradle项目中。

希望这对你有所帮助。

由于 Anurag