首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误:已经存在的程序类型:androidx.异步

错误:已经存在的程序类型:androidx.异步
EN

Stack Overflow用户
提问于 2019-07-18 12:20:37
回答 2查看 3.7K关注 0票数 4

我尝试过将我的应用程序升级到最新版本(5.1.1)的facebook,不知怎么的,它把我的项目迁移到了AndroidX的兔子洞里。在完成迁移和解决一些级别问题之后,我现在有了一个构建问题Error: Program type already present: androidx.asynclayoutinflater.R

我一直试图用this answer和其他变体来解决我的问题,但是我发现很难找到哪些库正在使用androidx.asynclayoutinflater.R

当我抛弃我的亲人时,我会得到这个

代码语言:javascript
复制
+--- androidx.databinding:databinding-adapters:3.4.2@aar
+--- androidx.databinding:databinding-runtime:3.4.2@aar
+--- androidx.databinding:databinding-common:3.4.2@jar
+--- androidx.emoji:emoji-appcompat:1.0.0@aar
+--- com.codewaves.stickyheadergrid:stickyheadergrid:0.9.6@aar
+--- com.google.android.material:material:1.0.0@aar
+--- com.kishan.askpermission:askpermission:1.0.3@aar
+--- com.theartofdev.edmodo:android-image-cropper:2.8.0@aar
+--- uk.co.chrisjenx:calligraphy:2.3.0@aar
+--- com.facebook.android:facebook-android-sdk:5.1.1@aar
+--- com.facebook.android:facebook-login:5.1.1@aar
+--- com.facebook.android:facebook-share:5.1.1@aar
+--- com.facebook.android:facebook-common:5.1.1@aar
+--- androidx.appcompat:appcompat:1.0.2@aar
+--- androidx.browser:browser:1.0.0@aar
+--- androidx.cardview:cardview:1.0.0@aar
+--- androidx.constraintlayout:constraintlayout:1.1.3@aar
+--- androidx.gridlayout:gridlayout:1.0.0@aar
+--- androidx.legacy:legacy-support-v13:1.0.0@aar
+--- androidx.legacy:legacy-support-v4:1.0.0@aar
+--- com.andkulikov:transitionseverywhere:1.8.0@aar
+--- com.google.firebase:firebase-messaging:19.0.1@aar
+--- com.google.firebase:firebase-perf:18.0.1@aar
+--- com.github.bumptech.glide:glide:4.8.0@aar
+--- com.google.firebase:firebase-config:18.0.0@aar
+--- com.segment.analytics.android.integrations:firebase:1.3.1@jar
+--- com.google.firebase:firebase-core:17.0.1@aar
+--- com.google.firebase:firebase-analytics:17.0.0@aar
+--- com.google.android.gms:play-services-measurement-api:17.0.0@aar
+--- com.google.firebase:firebase-iid:19.0.1@aar
+--- com.google.firebase:firebase-abt:18.0.0@aar
+--- com.google.firebase:firebase-common:18.0.0@aar
+--- com.google.android.gms:play-services-clearcut:17.0.0@aar
+--- com.google.android.gms:play-services-phenotype:17.0.0@aar
+--- com.google.firebase:firebase-iid-interop:17.0.0@aar
+--- com.google.android.gms:play-services-base:17.0.0@aar
+--- com.google.android.gms:play-services-tasks:17.0.0@aar
+--- com.google.firebase:firebase-measurement-connector:18.0.0@aar
+--- com.google.android.gms:play-services-measurement:17.0.0@aar
+--- com.google.android.gms:play-services-measurement-sdk:17.0.0@aar
+--- com.google.android.gms:play-services-measurement-impl:17.0.0@aar
+--- com.google.android.gms:play-services-stats:17.0.0@aar
+--- com.google.android.gms:play-services-measurement-sdk-api:17.0.0@aar
+--- com.google.android.gms:play-services-measurement-base:17.0.0@aar
+--- com.google.android.gms:play-services-ads-identifier:17.0.0@aar
+--- com.google.android.gms:play-services-basement:17.0.0@aar
+--- androidx.fragment:fragment:1.0.0@aar
+--- androidx.vectordrawable:vectordrawable-animated:1.0.0@aar
+--- ca.barrenechea.header-decor:header-decor:0.2.8@aar
+--- androidx.recyclerview:recyclerview:1.0.0@aar
+--- androidx.legacy:legacy-support-core-ui:1.0.0@aar
+--- com.facebook.android:facebook-places:5.1.1@aar
+--- com.facebook.android:facebook-applinks:5.1.1@aar
+--- com.facebook.android:facebook-messenger:5.1.1@aar
+--- com.facebook.android:facebook-core:5.1.1@aar
+--- androidx.legacy:legacy-support-core-utils:1.0.0@aar
+--- androidx.vectordrawable:vectordrawable:1.0.1@aar
+--- androidx.emoji:emoji-bundled:1.0.0@aar
+--- androidx.emoji:emoji:1.0.0@aar
+--- androidx.media:media:1.0.0@aar
+--- androidx.transition:transition:1.0.0@aar
+--- androidx.loader:loader:1.0.0@aar
+--- androidx.viewpager:viewpager:1.0.0@aar
+--- androidx.coordinatorlayout:coordinatorlayout:1.0.0@aar
+--- androidx.drawerlayout:drawerlayout:1.0.0@aar
+--- androidx.slidingpanelayout:slidingpanelayout:1.0.0@aar
+--- androidx.customview:customview:1.0.0@aar
+--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0@aar
+--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0@aar
+--- androidx.core:core:1.0.2@aar
+--- androidx.multidex:multidex:2.0.1@aar
+--- com.anjlab.android.iab.v3:library:1.0.44@jar
+--- com.appsflyer:segment-android-integration:1.18@aar
+--- com.segment.analytics.android.integrations:mixpanel:2.1.0@jar
+--- com.segment.analytics.android:analytics:4.4.0-beta1@jar
+--- com.squareup.okhttp3:logging-interceptor:3.12.0@jar
+--- com.squareup.retrofit2:converter-gson:2.5.0@jar
+--- com.squareup.retrofit2:retrofit:2.5.0@jar
+--- io.branch.sdk.android:library:2.19.5@aar
+--- joda-time:joda-time:2.10.1@jar
+--- me.leolin:ShortcutBadger:1.1.21@aar
+--- me.relex:circleindicator:1.2.2@aar
+--- org.greenrobot:eventbus:3.1.1@jar
+--- se.emilsjolander:StickyScrollViewItems:1.1.0@aar
+--- com.crashlytics.sdk.android:crashlytics:2.7.1@aar
+--- androidx.test.espresso:espresso-idling-resource:3.2.0@aar
+--- org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.31@jar
+--- com.jakewharton.rxbinding:rxbinding:0.3.0@aar
+--- androidx.lifecycle:lifecycle-runtime:2.0.0@aar
+--- androidx.versionedparcelable:versionedparcelable:1.0.0@aar
+--- androidx.collection:collection:1.0.0@jar
+--- androidx.cursoradapter:cursoradapter:1.0.0@aar
+--- androidx.interpolator:interpolator:1.0.0@aar
+--- com.github.bumptech.glide:gifdecoder:4.8.0@aar
+--- androidx.exifinterface:exifinterface:1.0.0@aar
+--- androidx.lifecycle:lifecycle-livedata:2.0.0@aar
+--- androidx.lifecycle:lifecycle-livedata-core:2.0.0@aar
+--- androidx.lifecycle:lifecycle-common:2.0.0@jar
+--- androidx.arch.core:core-runtime:2.0.0@aar
+--- androidx.arch.core:core-common:2.0.0@jar
+--- androidx.documentfile:documentfile:1.0.0@aar
+--- androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar
+--- androidx.print:print:1.0.0@aar
+--- androidx.lifecycle:lifecycle-viewmodel:2.0.0@aar
+--- androidx.annotation:annotation:1.0.2@jar
+--- androidx.constraintlayout:constraintlayout-solver:1.1.3@jar
+--- com.appsflyer:af-android-sdk:4.10.0@aar
+--- com.github.bumptech.glide:disklrucache:4.8.0@jar
+--- com.github.bumptech.glide:annotations:4.8.0@jar
+--- com.squareup.okhttp3:okhttp:3.12.0@jar
+--- com.mixpanel.android:mixpanel-android:5.6.2@aar
+--- com.google.code.gson:gson:2.8.2@jar
+--- com.crashlytics.sdk.android:answers-shim:0.0.6@aar
+--- com.crashlytics.sdk.android:beta:1.2.7@aar
+--- com.crashlytics.sdk.android:crashlytics-core:2.4.1@aar
+--- com.crashlytics.sdk.android:answers:1.4.1@aar
+--- io.fabric.sdk.android:fabric:1.4.1@aar
+--- org.jetbrains.kotlin:kotlin-stdlib:1.3.31@jar
+--- io.reactivex:rxjava:1.0.14@jar
+--- com.parse.bolts:bolts-android:1.4.0@jar
+--- com.google.zxing:core:3.3.3@jar
+--- com.google.auto.value:auto-value-annotations:1.6.3@jar
+--- com.squareup.okio:okio:1.15.0@jar
+--- org.jetbrains.kotlin:kotlin-stdlib-common:1.3.31@jar
+--- org.jetbrains:annotations:13.0@jar
+--- com.parse.bolts:bolts-applinks:1.4.0@jar
\--- com.parse.bolts:bolts-tasks:1.4.0@jar

它只显示一行+--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0@aar一次(每种产品风格/构建类型只显示一次)

更新:找到了一个更像依赖关系图的树,这里有一个片段,但是有大量的这种东西,甚至不能粘贴到pastebin上就有这么多。

代码语言:javascript
复制
+--- androidx.appcompat:appcompat:1.0.2
|    +--- androidx.fragment:fragment:1.0.0
|    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    +--- androidx.legacy:legacy-support-core-ui:1.0.0
|    |    |    +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    \--- androidx.core:core:1.0.0 -> 1.0.2 (*)

试着移除那些似乎没有效果的

代码语言:javascript
复制
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.legacy:legacy-support-v13:1.0.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.multidex:multidex:2.0.1'

我的依赖关系如下所示

代码语言:javascript
复制
dependencies {
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.browser:browser:1.0.0'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'androidx.core:core:1.0.2'
    implementation 'androidx.emoji:emoji-appcompat:1.0.0'
    implementation 'androidx.emoji:emoji-bundled:1.0.0'
    implementation 'androidx.gridlayout:gridlayout:1.0.0'
    implementation 'androidx.legacy:legacy-support-v13:1.0.0'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.multidex:multidex:2.0.1'
    implementation 'ca.barrenechea.header-decor:header-decor:0.2.8'
    implementation 'com.andkulikov:transitionseverywhere:1.8.0'
    implementation 'com.anjlab.android.iab.v3:library:1.0.44'
    implementation 'com.appsflyer:segment-android-integration:1.+'
    implementation 'com.codewaves.stickyheadergrid:stickyheadergrid:0.9.6'
    implementation 'com.facebook.android:facebook-android-sdk:5.1.1'
    implementation 'com.github.bumptech.glide:glide:4.8.0'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'com.google.firebase:firebase-core:17.0.1'
    implementation 'com.google.firebase:firebase-messaging:19.0.1'
    implementation 'com.google.firebase:firebase-perf:18.0.1'
    implementation 'com.kishan.askpermission:askpermission:1.0.3'
    implementation 'com.segment.analytics.android.integrations:firebase:1.3.1'
    implementation 'com.segment.analytics.android.integrations:mixpanel:2.1.0'
    implementation 'com.segment.analytics.android:analytics:4.+'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.12.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
    implementation 'com.squareup.retrofit2:retrofit:2.5.0'
    implementation 'com.theartofdev.edmodo:android-image-cropper:2.8.0'
    implementation 'io.branch.sdk.android:library:2.+'
    implementation 'joda-time:joda-time:2.10.1'
    implementation 'me.leolin:ShortcutBadger:1.1.21@aar'
    implementation 'me.relex:circleindicator:1.2.2@aar'
    implementation 'org.greenrobot:eventbus:3.1.1'
    implementation 'se.emilsjolander:StickyScrollViewItems:1.1.0'
    implementation 'uk.co.chrisjenx:calligraphy:2.3.0'
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation('com.crashlytics.sdk.android:crashlytics:2.7.1@aar') {
        transitive = true;
    }
    kapt 'com.github.bumptech.glide:compiler:4.8.0'

    //---Testing---
    testImplementation 'junit:junit:4.12'
    androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    androidTestImplementation('androidx.test.espresso:espresso-contrib:3.1.0') {
        exclude group: 'com.android.support', module: 'appcompat'
        exclude group: 'com.android.support', module: 'support-v4'
        exclude group: 'com.android.support', module: 'support-annotations'
        exclude module: 'recyclerview-v7'
    }
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-intents:3.2.0'
    implementation 'androidx.test.espresso:espresso-idling-resource:3.2.0'
    androidTestImplementation 'androidx.test:rules:1.2.0'
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestUtil 'androidx.test:orchestrator:1.2.0'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.31"
    implementation 'com.jakewharton.rxbinding:rxbinding:0.3.0'
    //-------------
}

我也尝试过强制使用支持库版本,不确定这是否有用,或者我做错了什么,但我在这里的一篇文章中提到了这一点。

代码语言:javascript
复制
final SUPPORT_LIB_VER = '28.0.0'

configurations.all {
    resolutionStrategy {
        force "com.android.support:appcompat-v7:${SUPPORT_LIB_VER}"
        force "com.android.support:support-v4:${SUPPORT_LIB_VER}"
    }
}

我的gradle.properties里也有这个

代码语言:javascript
复制
android.enableJetifier=true
android.useAndroidX=true

是否有人知道一种简单的方法来找到使用这种特定依赖关系的方法,这样我就可以尝试解决复制问题,或者仅仅知道是什么库导致了复制?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-23 19:15:06

经过几天的磨难,我终于找到了这个问题。

我不得不改变

代码语言:javascript
复制
implementation 'com.segment.analytics.android.integrations:firebase:1.3.1'

代码语言:javascript
复制
implementation 'com.segment.analytics.android.integrations:firebase:1.3.1@aar'

fml

我发现,解决这个问题的最简单的方法是创建一个干净的新android项目,并将主项目中的所有依赖项都放在其中,然后使用divide来确定具体是哪个库导致了这个问题。找到了一个随机的0评级答案,建议在没有解释的情况下将@aar放在末尾,这是有效的。

票数 10
EN

Stack Overflow用户

发布于 2020-01-15 20:19:25

我建议对这一共同问题采取稍微不同的做法。首先也是最重要的:从一个干净的板子上开始!这意味着,File ->使缓存/重新启动无效,然后构建->清洁项目,然后构建->重建项目。现在,将所有依赖项更新为最新的(尽管这是一罐蠕虫,有时可能会引入新的问题)。这个通常会帮我处理的。

我不时会遇到这个问题,我发现当在依赖关系中存在一些差异的分支之间进行切换时,就会发生这种情况。因此,如果您在服务分支(例如,维护生产代码)和特性分支(例如,引入新的依赖关系,无论是在名称上还是在简单版本方面)之间来回来回,您将遇到这样的情况。Android在切换分支时做得很糟糕(很多事情,特别是)清理。它正在查看过时的缓存信息,并发现冲突实际上并不存在。

我希望这能帮到你!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57094328

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档