sno*_*eam 3 android gradle android-gradle-plugin
使用Gradle构建Android库项目时,从生成的.jar中排除BuildConfig.class和R.class的正确方法是什么?
可能最优雅的解决方案是在库的末尾添加build.gradle:
afterEvaluate {
generateReleaseBuildConfig.enabled = false
}
Run Code Online (Sandbox Code Playgroud)
为了排除 R 和 BuildConfig 使用这个
afterEvaluate {
generateReleaseBuildConfig.enabled = false
generateDebugBuildConfig.enabled = false
generateReleaseResValues.enabled = false
generateDebugResValues.enabled = false
}
Run Code Online (Sandbox Code Playgroud)
在构建之前不要迷失在清理项目中
添加自定义任务:
task androidReleaseJar(type: Jar, dependsOn: assembleRelease) {
from "$buildDir/intermediates/classes/release/"
exclude '**/BuildConfig.class'
exclude '**/R.class'
exclude '**/R$*.class'
}
Run Code Online (Sandbox Code Playgroud)
参考文献:
1. https://github.com/facebook/rebound/blob/master/build.gradle
2. https://github.com/keyboardsurfer/Crouton/blob/master/library/build.gradle
3. HTTPS: //github.com/SnowdreamFramework/android-log/commit/4297a0244c972e3fcb9042b5e12181b21c33b524
| 归档时间: |
|
| 查看次数: |
6713 次 |
| 最近记录: |