2

升级为:

  • Android Studio 3.0 金丝雀 2
  • com.android.tools.build:gradle:3.0.0-alpha2

我有一个多模块项目(主应用程序 + 子模块)

包含在主应用程序中:

dependencies {
    implementation project(path: ':testlib', configuration: 'default')
}

testlib 被定义为一个简单的 android 库项目,当包含在 gradle 2.3.0 中并通过 compile project(path: ':testlib') 时可以正常工作

我收到以下 gradle 错误消息:

无法解析配置 ':app:devDebug_signedCompileClasspath' 的所有依赖项。在“项目:testlib”上选择了“默认”配置,但它不能用作项目依赖项,因为它不打算供其他组件使用。

在这种情况下,“不打算供其他组件使用”是什么意思?该模块被定义为一个 android 库。

这是 testlib 的 build.gradle:

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-alpha2'
    }
}

apply plugin: 'com.android.library'


android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"


    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

我错过了什么?

4

2 回答 2

3

我也遇到了这个错误。Android Studio 3.0 Canary 4 刚刚问世。我更新到它,它也将 gradle 更新到 4.0rc1。

问题自行消失了。

于 2017-06-16T00:30:01.843 回答
0

更改您的顶级构建文件(又名根 gradle)

classpath 'com.android.tools.build:gradle:3.0.0-alpha4'

还是行不通?

更新 dist-url(在 gradle-wrapper.properties 中)

distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-rc-1-all.zip
于 2017-06-16T05:14:20.957 回答