美文网首页
2018-05-17工作日志,去除框架内的依赖

2018-05-17工作日志,去除框架内的依赖

作者: IT枫 | 来源:发表于2018-05-17 10:05 被阅读37次

    项目中多版本Gilde(3.7.0与4.0.0),使用Glide3.7.0加载网络Gif图,在6.0系统上报异常导致程序crash。

    问题一:框架内的依赖了不同版本的Gilde

    这是其他人的总结,拿来主义了。
    在引入了glide 3.7版本后,在使用过程中却发现无法正常使用链式语法设置placeholder和error等,于是我打开项目.idea-->libiraries,发现目录下glide的版本是4.0,很明显,有别的框架依赖了4.0

    正是这个4.0版本的存在让我设置的3.7依赖无效,那么如果我还想用3.7的话就要去除这个4.0。这样感觉不是很合适,因为这个图片框架有可能用到了4.0的新特性,使用3.7的话可能会出问题。这里只是演示一下怎么去除框架内的依赖:
    把gradle里的依赖改成这个就可以了:

     compile ('com.github.LuckSiege.PictureSelector:picture_library:v2.1.0'){
            exclude group: 'com.github.bumptech.glide'
        }
    

    原文链接

    和我遇到的问题一模一样,引入到框架版本都一模一样。

    问题二:Error:Failed to resolve: com.github.LuckSiege.PictureSelector:picture_library:v2.1.0

    解决方案: 在根级 build.gradle 文件中增加maven { url 'https://jitpack.io' }

    allprojects {
        repositories {
            jcenter()
    //在这里,在这里
            maven { url 'https://jitpack.io' }
            // retroLambda相关
            mavenCentral()
        }
    }
    

    使用注解框架butterknife,空指针

    项目中的所有依赖都放在了某个模块 Gradle 文件中。

    dependencies {
        //注解框架ButterKnife是JakeWharton大神开发的一个开源库
        compile 'com.jakewharton:butterknife:8.8.1'
        annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    }
    

    解决方案: annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'这句一定要放在app模块 Gradle 文件中。

    dependencies {
          annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    }
    

    相关文章

      网友评论

          本文标题:2018-05-17工作日志,去除框架内的依赖

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