• Gradle 编译多个project(包括多Library库project依赖)指导


    Gradle Android最新自己主动化编译脚本教程(提供demo源代码)

    这篇文章我简单写了基于Gradle2.1 进行的android project和android library的编译实例,随后有网友问我是否支持依赖多library编译。我的回复是肯定的,具体见以下的指导:


    在实际开发中有非常多工程引用到了android-support-v4.jar或者其它的jar包资源;

    有时候。在每一个library库的libs里都放进android-support-v4.jar 在eclpse里编译执行是没有问题,由于你能够将多余的jarexclud编译设置。可是放在外边执行gradle build的话,会提示jar包反复



    解决方法:

    在eclipse里我们能够将公共的jar包做一个工程,其它library库引用这个jar包库,然后再被主project所引用。

    这种话,在每一个库工程里的build.gradle里都要设置例如以下:

    dependencies{
    	compile fileTree(dir:'libs',include:"*.jar")
    	compile project(':DependLibs:appcompat_v7')
    }
    

    这样写貌似挺对。可是细致想想还是不对。由于每一个引用的库都编译的时候把公共jar库给编译引用了。最后还是会提示冲突。


    正确写法改正例如以下:

    dependencies{
    	compile fileTree(dir:'libs',include:"*.jar")
    	//compile project(':DependLibs:appcompat_v7')
    	compile 'com.android.support:support-v4:20.0.0'
    }
    

    另一个不对写法

    dependencies{
    	compile fileTree(dir:'libs',include:"*.jar")
    	//compile project(':DependLibs:appcompat_v7')
    	compile 'com.android.support:support-v4:20'
    }
    

    看到这2个写法的差别了吗?


    提示你找不到  Could not find com.android.support:support-v4:20


    出现这种问题,自己先看看下图:



    Android sdk的 Extras包里的Android Support Respository和Andoid Support Library是否 Installed,假设安装了

    能够跑到以下文件夹找D:devadt-bundle-windows-x86-20140702sdkextrasandroidm2repositorycomandroidsupportsupport-v420.0.0




    找到了,就開始build吧。




    引用了非常多slidingmenu_library。viewPagerlibrary 工程都编译通过了。


    有什么问题。大家能够跟我交流(QQ群:221057495)。


  • 相关阅读:
    莫比乌斯反演学习笔记
    NOIp 2020 游记
    题解【LOJ3087】「GXOI / GZOI2019」旅行者
    题解【CF999E】Reachability from the Capital
    题解【LOJ2007】「SCOI2015」国旗计划
    题解【LOJ3145】「APIO2019」桥梁
    题解【LOJ2114】「HNOI2015」菜肴制作
    CSP-J/S 2020 爆炸记
    题解【洛谷P2569】[SCOI2010]股票交易
    补题目录
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6915382.html
Copyright © 2020-2023  润新知