无法解析拆分的 Gradle 构建脚本中的库类

Mar*_*ies 2 android split build gradle android-studio

我正在尝试将我的 Gradle Build 文件分成几个部分以使其可维护

在我的 build.gradle 中,我在一项任务中使用了Apache Commons库,我现在将其放在一个单独的 Gradle 文件中

Gradle项目文件:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
        classpath 'commons-codec:commons-codec:1.10'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
Run Code Online (Sandbox Code Playgroud)

Gradle 模块文件:

apply plugin: 'com.android.library'
apply from: 'gradle/splittedFile.gradle'
Run Code Online (Sandbox Code Playgroud)

我的 splittedFile.gradle

import org.apache.commons.codec.binary.Base64
Run Code Online (Sandbox Code Playgroud)

当我执行构建时,它说“无法解析类 org.apache.commons.codec.binary.Base64

如何在拆分的 Gradle 文件中访问库?

Ser*_*kyi 5

buildscript依赖块添加到您的gradle/splittedFile.gradle文件中。

import org.apache.commons.codec.binary.Base64

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath group: 'commons-codec', name: 'commons-codec', version: '1.2'
    }
}

task encode << {
    def byte[] encodedString = new Base64().encode('hello world\n'.getBytes())
    println new String(encodedString)
}
Run Code Online (Sandbox Code Playgroud)