Grade 依赖冲突完美解决

作者: 奇梦人 | 来源:发表于2019-03-22 17:47 被阅读16次
    FAILURE: Build failed with an exception.
    
    * What went wrong:
    Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForPAXDebug'.
    > com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: D:\lanya\KLN_JiaZhang\app\build\intermediates\transforms\dexBuilder\PAX\debug\0.jar, 
    .....
    
     Program type already present: org.intellij.lang.annotations.JdkConstants$AdjustableOrientation
     Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
    
    

    这是我项目的报错信息,先告诉大家解决怎么看jar包冲突报错信息
    下面这句报错信息我们可以知道程序报错是因为 jar 冲突

    Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForPAXDebug'.
    

    那么确定了报错原因,那么该怎么解决呢?
    标记重点 “org.intellij.lang.annotations.JdkConstants$AdjustableOrientation”
    这一行报错信息告诉了我们这个类发生了冲突 “AdjustableOrientation”

    
    Program type already present: org.intellij.lang.annotations.JdkConstants$AdjustableOrientation
    
    

    然后在 AndroidStudio 中双击 Shift 全局查找 “AdjustableOrientation”
    查出来的结果确实有俩个不同版本的依赖包,一个是annotations13.0@jar的 ,另一个是annotations-java5-15.0@jar。
    到这里虽然我们知道这俩个依赖包有冲突,但是怎么找到这俩个依赖是在哪里呢?

    image.png

    打开 AndroidStudio 右上角 Grade,运行 help 下的 dependencis

    image.png

    运行之后大一点的项目会有很多的依赖关系,我们直接使用快捷键 “ctrl + F ” 搜索冲突 jar 的包名 “org.jetbrains:annotations”,从截图中可以看到 我需要去除的依赖在 easylib 这个项目下面,到了这一步直接去 这个项目的 build.grade 下去找到去除就好了。

    image.png

    相关文章

      网友评论

        本文标题:Grade 依赖冲突完美解决

        本文链接:https://www.haomeiwen.com/subject/krmrvqtx.html