Gradle配置dependencies

  • 2017-10-12
  • 42
  • 0
  • 0
 dependencies {
        compile fileTree(dir: 'libs', includes: ['*.jar'])
        compile project(':honjane-demo-library')
        betaCompile 'com.squareup.leakcanary:leakcanary-android:1.3.1'
        betaCompile 'com.github.moduth:blockcanary-ui:1.1.4'
        apt 'com.jakewharton:butterknife-compiler:8.1.1'
    }
    ```
依赖规则:
例如 betaCompile ‘com.github.moduth:blockcanary-ui:1.1.4’

betaCompile group: 'com.github.moduth', name: 'blockcanary-ui', version: '1.1.4'

<br />依赖方式有如下几种

Compile
compile是对所有的build type以及favlors都会参与编译并且打包到最终的apk文件中。

Provided
Provided是对所有的build type以及favlors只在编译时使用,类似eclipse中的external-libs,只参与编译,不打包到最终apk。

APK
只会打包到apk文件中,而不参与编译,所以不能再代码中直接调用jar中的类或方法,否则在编译时会报错

下面3种与buildTypes对应的几种依赖

Test compile
Test compile 仅仅是针对单元测试代码的编译编译以及最终打包测试apk时有效,而对正常的debug或者release apk包不起作用。

Debug compile
Debug compile 仅仅针对debug模式的编译和最终的debug apk打包。

Release compile
Release compile 仅仅针对Release 模式的编译和最终的Release apk打包。

依赖本地文件:
compile fileTree

compile fileTree(dir: 'libs', include: '.jar')
provided fileTree(dir: '../honjane-demo-library/libs', include: '
.jar')
compile(name: 'lib-1.1', ext: 'aar')//依赖并执行本地aar包

依赖远程文件:

compile "com.jakewharton:butterknife:8.2.1"
provided 'com.android.support:support-annotations:23.2.1'

<br />依赖库工程(多module):

compile project(':honjane-demo-library')
```

评论

还没有任何评论,你来说两句吧

发表评论