Compile
compile是对所有的build type以及favlors都会参与编译并且打包到最终的apk文件中。
eg.
compile fileTree(include:[*.jar],dir:'libs']
只添加上面的打包APK时不会将文件夹打包进去,还需要在APP下的build.gradle加以下:
android{
sourceSets { main { jniLibs.srcDirs = ['libs'] assets.srcDirs = ['assets'] } }
}
Provided
Provided是对所有的build type以及favlors只在编译时使用,类似eclipse中的external-libs,只参与编译,不打包到最终apk。
eg.jar包放在runtime目录下,至提供接口在编译时使用
provided fileTree(include:[*.jar],dir:'runtime']
APK
只会打包到apk文件中,而不参与编译,所以不能再代码中直接调用jar中的类或方法,否则在编译时会报错
Test compile
Test compile 仅仅是针对单元测试代码的编译编译以及最终打包测试apk时有效,而对正常的debug或者release apk包不起作用。
Debug compile
Debug compile 仅仅针对debug模式的编译和最终的debug apk打包。
Release compile
Release compile 仅仅针对Release 模式的编译和最终的Release apk打包。
转载请注明原文地址: https://ju.6miu.com/read-39763.html