为何没有看到对small框架核心库的显式依赖?

问题背景:
small提供了两个重要模块:
  • buildSrc——组件编译插件,用于打包组件
  • small——核心库,用于加载组件


问题发现:
只看到small工程中有对small的gradle插件的引用,但是没有看到对small核心库的显式引用:
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0'
        classpath 'net.wequick.tools.build:gradle-small:1.3.0-beta5'
    }
}
apply plugin: 'net.wequick.small'
1. 之前看到同事直接把small框架源码放进demo工程里,然后没有在build.gradle中显式地配置任何对small源码模块的依赖就可以正常编译了,我感到很奇怪,难道不需要配置类似“compile xxx”的依赖?

2. 接着看small官方的使用示例demo: https://github.com/wequick/Small/tree/master/Android/Sample
里边没有看到small源码模块,同样没看到任何 build.gradle中显式地配置对small核心库的依赖。


问题解决:
经过分析,唯一显式配置的就只有small的打包插件,那么是不是在这个插件中自动为工程引用了small的核心库了呢?答案是对的!
Small\Android\DevSample\buildSrc\src\main\groovy\net\wequick\gradle\AndroidPlugin.groovy
protected void afterEvaluate(boolean released) {
    // Automatic add `small' dependency
    if (rootSmall.smallProject != null) {
        project.dependencies.add(smallCompileType, rootSmall.smallProject)
    } else {
        project.dependencies.add(smallCompileType, "${SMALL_AAR_PREFIX}$rootSmall.aarVersion")
    }
    ...
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值