apply plugin: 'com.android.library' //apply plugin: 'com.android.application' //第一,改这里 android { compileSdkVersion 28 defaultConfig { // applicationId "com.idea_a.robot" //第二,屏蔽这里 minSdkVersion 24 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } sourceSets { main { jniLibs.srcDirs = ['libs'] } } //第三, 删除libs下的你的jar包
task clearJar(type: Delete) {
delete 'build/libs/mainboard.jar'
}
//第四,生成
task makeJar(type: Jar) {
archivesBaseName = 'mainboard'
//设置拷贝的文件 有两个方法
//1. 指定某个
from(project.zipTree('build/intermediates/packaged-classes/release/classes.jar'))
from(project.zipTree('build/intermediates/packaged-classes/release/libs/firefly-api.jar'))
//2. 从打包文件夹下的文件
//from('build/intermediates/classes/debug')
//打包到jar后的目录结构,这样会跑到build下的 libs文件夹里面
into('build/libs/')
//下面是,排除不要的东西
//去掉不需要打包的目录和文件
exclude( 'android/', 'test', 'androidTest/', 'BuildConfig.class', 'R.class')
//去掉R$开头的文件
//exclude{ it.name.startsWith('R$');}
//exclude('android')
}
makeJar.dependsOn(build)
最后在 Terminal输入:
gradlew makeJar
然后你在项目文件build里面找libs下面看看有没有你的东西: