user_4685247
user_4685247

Reputation: 2985

configurations.compile is empty

I have been using the following task to copy libraries:

task copyLibs(type: Copy, dependsOn: 'cleanLibs') {
    from configurations.compile
    into 'libs'
}

But with newer version of gradle, the compile configuration was replaced with implementation. I think this is why the configurations.compile list is now empty. I've tried referencing configuration.implementation and configuration.implementation.resolvedConfiguration directly, but this produces the following error:

Resolving configuration 'implementation' directly is not allowed

If I try to use configurations.compile.resolvedConfiguration I get org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingConfigurationResolver$ErrorHandlingResolvedConfiguration@5bb68e71.

How can I achieve the expected result (copy all dependencies to 'libs' folder)?

Upvotes: 5

Views: 1275

Answers (1)

Lars Hansen
Lars Hansen

Reputation: 59

Try configurations.compileClasspath instead.

This worked for me with Gradle 4.5.1:

task listJars {
    doLast {
        configurations.compileClasspath.each { println it }
    }
}

Upvotes: 1

Related Questions