• Android gradle用exclude排除引用包中的dependency引用


    项目突然编译不通过,报如下错误

        FAILURE: Build failed with an exception.
         
        * What went wrong:
        Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
        > com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug104.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug115.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug93.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug39.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug12.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug21.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug47.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug4.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug5.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug22.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug14.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug30.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug31.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug13.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug48.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug10.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug19.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug49.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug6.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug23.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug11.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug41.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug24.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug7.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug34.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug17.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug26.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug42.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug51.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug25.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug43.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug8.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug52.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug27.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug44.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug18.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug35.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug9.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug45.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug28.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug15.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug1.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug2.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug32.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug46.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug16.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug29.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug3.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug50.jar, D:wsAutosizingTestappuildintermediates ransformsdexBuilderdebug20.jar
          Program type already present: android.support.v4.widget.SlidingPaneLayout$AccessibilityDelegate
          Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
         
        * Try:
        Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
         
        * Get more help at https://help.gradle.org
         
        BUILD FAILED in 19s

    经排查发现原来是项目中引用的第三方包'liji.library.dev:citypickerview:4.1.1'中引用的v7包和项目引用的v7包冲突导致的。

    可以直接删除项目的v7包引用,直接用第三包里面的v7包就可以了。

    但是如果第三方包引用的包太老旧,你执意要用最新的,那该怎么办呢?你可以用exclude把第三方包里的指定dependency排除掉,然后再重新编译就可以成功了。

        dependencies {
            implementation 'com.android.support:appcompat-v7:28.0.0'
            implementation ('liji.library.dev:citypickerview:4.1.1') {
                exclude group: 'com.android.support'
            }
        }

  • 相关阅读:
    前端性能优化方法
    软件测试十大原则
    CSRF攻击【转载】
    XSS攻击(出现的原因、预防措施......)
    python 连接MySQL数据库
    《快消品营销人的第一本书》
    python 格式化输出日志记录
    python 安装cv2
    测试用例设计的策略
    【转】APP功能测试要领
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/11856031.html
Copyright © 2020-2023  润新知