升级到Gradle 2.3.0后,Android应用程序出现导入错误

3

我有一个在Android Studio上的安卓应用项目,其中包含以下两个导入语句:

import com.google.api.client.extensions.android.http.AndroidHttp;
import com.google.api.client.extensions.android.json.AndroidJsonFactory;

当使用Gradle插件版本2.2.3时,我对这些导入没有任何问题。然而,升级到Gradle插件2.3.1后,代码出现错误:“'extensions'”在两种情况下都变成红色,错误信息为“无法解析'extensions'”。

以下是一些相关的背景信息:

Android Studio版本2.3.1

Gradle版本3.3

CompileSDKVersion 25

buildToolsVersion '25.0.0'

Android SDK工具版本26.0.1

我已经向Google报告了这个bug,但想知道是否有其他人遇到过类似的问题,或者是否能够想到可能的解释?

    dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        compile project(path: ':backend', configuration: 'android-endpoints')
        compile 'com.android.support:appcompat-v7:25.2.0'
        compile 'com.android.support:support-v4:25.2.0'
        compile 'com.android.support:recyclerview-v7:25.2.0'
        compile 'com.android.support:design:25.2.0'
        compile 'com.android.support:percent:25.2.0'
        compile 'com.google.firebase:firebase-database:10.2.0'
        compile 'com.google.firebase:firebase-core:10.2.0'
        compile 'com.google.firebase:firebase-messaging:10.2.0'
        compile 'com.firebaseui:firebase-ui-database:1.0.1'
        compile 'com.fasterxml.jackson.core:jackson-annotations:2.8.0.rc2'
        compile 'com.google.code.findbugs:jsr305:2.0.1'
        compile 'com.android.support.constraint:constraint-layout:1.0.2'
        testCompile 'junit:junit:4.12'
}

你能在 build.gradle 中展示你的依赖关系吗? - azizbekian
已编辑以显示依赖项 - CKP78
1个回答

2

我在您的gradle文件中没有看到必要的依赖项。请将以下内容添加到您的依赖项中。

compile("com.google.api-client:google-api-client-android:1.22.0") {
    exclude group: 'com.google.code.findbugs'
}

将此作为依赖项添加可以修复导入错误,但在项目构建时会收到警告:警告:依赖项org.apache.httpcomponents:httpclient:4.0.1因可能与Android提供的内部版本冲突而被忽略调试。 - CKP78
我也很好奇为什么更新gradle到2.3.1之后才出现了导入警告:在更新之前,您建议的依赖项并不存在,但是导入没有出现错误。 - CKP78
1
我不确定你的代码之前如何编译通过没有适当的依赖关系。这不是随 Android Gradle 插件一起发布的内容,因此它不会产生影响。 - azizbekian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接