构建错误。重复的类android.support.v4

时间:2019-05-27 19:46:32

标签: android image text

我已按照uTube指南https://www.youtube.com/watch?v=CLjzLiU_GpE

使用Visual Studio创建了一个简单的图像到文本应用程序

我是应用开发人员的新手,想学习这一点,但无法编译。

我在这里尝试过类似的错误 Duplicate class android.support.v4.app.INotificationSideChannel found in modules classes?

当我尝试遵循此步骤并添加到AndroidStudioProjects \ ImageToTextApp \ gradle.properties中时 我收到更多错误

我的错误显示,但我(仅)包括前两个,总共390个。

我想我可以看到它告诉我(根据此处的其他问题),该类位于2个库中。 (com.android.support:support-compat:28.0.0)和classes.jar(com.android.support:support-v4:24.0.0)

我看到我的项目正在导入这些库,以及如何解决这些错误。

在模块classes.jar(com.android.support:support-compat:28.0.0)和classes.jar(com.android.support:support-v4)中找到的重复类android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat: 24.0.0) 在模块classes.jar(com.android.support:support-core-ui:28.0.0)和classes.jar(com.android.support:support-v4:24.0)中找到重复的类android.support.v4.app.ActionBarDrawerToggle .0) ... 在模块classes.jar(com.android.support:customview:28.0.0)和classes.jar(com.android.support:support-v4:24.0.0)中找到重复的类android.support.v4.widget.ViewDragHelper $ 2 在模块classes.jar(com.android.support:customview:28.0.0)和classes.jar(com.android.support:support-v4:24.0.0)中找到重复的类android.support.v4.widget.ViewDragHelper $ Callback )

转到文档以了解如何解决依赖关系解析错误。

嗨@BachVu 我添加了您的建议行,并且build.gradle文件现在看起来像

  

依赖项{       实现fileTree(dir:'libs',包括:['* .jar'])       实现'com.android.support:appcompat-v7:28.0.0'实现   'com.android.support.constraint:约束布局:2.0.0-beta1'     testImplementation'junit:junit:4.13-beta-3'     androidTestImplementation'com.android.support.test:runner:1.0.2'     androidTestImplementation   'com.android.support.test.espresso:espresso-core:3.0.2'     实施'com.google.android.gms:play-services-vision:10.2.4'     排除模块:'support-v4'}

但这只会造成更多错误

  

错误:未找到Gradle DSL方法:'exclude()'

我是否需要添加其他导入或我在错误的位置添加了

4 个答案:

答案 0 :(得分:1)

尝试将此行添加到导致此问题exclude module: 'support-v4'的库中,如下所示:

implementation("androidx.recyclerview:recyclerview:x.x") {
        exclude group: 'com.android.support'
        exclude module: 'appcompat-v7'
        exclude module: 'support-v4'
    }

答案 1 :(得分:1)

尝试迁移AndroidX

==> Step 1
Just go to
Refactor > Migrate to AndroidX > Migrate > Do Refactor

==> Step 2
Update your classPath and all dependencies with the latest version(Alt+Enter)

答案 2 :(得分:0)

这是我的build.Gradle文件,现在一切正常;

  

依赖项{       实现fileTree(dir:'libs',包括:['* .jar'])       实施'com.android.support:appcompat-v7:28.0.0'       实现'com.android.support.constraint:constraint-layout:2.0.0-beta1'       testImplementation'junit:junit:4.13-beta-3'       androidTestImplementation'com.android.support.test:runner:1.0.2'       androidTestImplementation'com.android.support.test.espresso:espresso-core:3.0.2'       实施'com.google.android.gms:play-services-vision:17.0.2'}

主要区别是

  

com.google.android.gms:play-services-vision:10.2.4

出于某种原因,这还可以,然后它毫无提示地建议它已过时。从10.2.4> 17.0.2更新后,所有错误均消失了。

感谢您的时间。

答案 3 :(得分:0)

转到gradle.properties并编写以下两行代码:

android.useAndroidX=true
android.enableJetifier=`true