第一步:在项目中新建一个moudle mylibrary作为library
第二步:并将项目中原有的app moudle依赖此mylibrary
第三步:运行该app或者build该app后会在mylibrary moudle的build/intermediates/bundles/debug or release/classes.jar目录下生成classer.jar
第四步:在mylibrary的build.gradle中添加如下代码
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:25.3.1'
testCompile 'junit:junit:4.12'
}
def SDK_BASENAME = "TestSdk";
def SDK_VERSION = "_V1.0";
def sdkDestinationPath = "build";
def zipFile = file('build/intermediates/bundles/release/classes.jar')
task deleteBuild(type: Delete) {
delete sdkDestinationPath + SDK_BASENAME + SDK_VERSION + ".jar"
}
task makeJar(type: Jar) {
from zipTree(zipFile)
from fileTree(dir: 'src/main',includes: ['assets/**'])//将assets目录打入jar包
baseName = SDK_BASENAME + SDK_VERSION
destinationDir = file(sdkDestinationPath)
}
makeJar.dependsOn(deleteBuild, build)
第五步:在mylibrary的build.gradle中再添加如下代码,如果不添加会报错
android{
lintOptions{
abortOnError false
}
}
第六步:点击mylibrary的build.gradle右上角的sync now或者重新build该project
第七步:双击右边的gradle目录下的makeJAr
运行完后在run视图中能看到如下信息
第八步:在mylibrary的build目录下如果出现如下图中的TestSdk_V1.0.jar就说明自定义生成jar成功
第九步:复制该TestSdk_V1.0.jar到你需要用到的moudle中的libs目录下就可以使用了
下一篇:android 自定义jar包之合并jar包