例子:
module包名是com.example.mylibrary,在module內部的build.gradle文件中添加任務
task clearJar(type: Delete) {
delete 'build/libs/library.jar'
}
task makeJar(type: org.gradle.api.tasks.bundling.Jar) {
//指定生成的jar名
baseName 'library'
//從哪裏打包class文件
from('build/intermediates/classes/debug/com/example/mylibrary')
//打包到jar後的目錄結構
into('com/example/mylibrary')
//去掉不需要打包的目錄和文件
exclude('R.class')
exclude('BuildConfig.class')
//去掉R開頭的文件,這個沒道理啊?覺得不合理!
//exclude {
// it.name.startsWith('R')
//}
}
// 執行如下命令
$ gradle clearJar 或者 ./gradlew clearJar : 刪除jar包;
$ gradle makeJar 或者 ./gradlew makeJar : 生成jar包;
###: 生成的jar包在 build/libs/ 目錄下
demo:https://github.com/wanghui19921029/GradleTest1