这几天有个需求,需要写一个对外提供的sdk,因为之前一直使用的是IDEA来自动生成jar包,由于目前编译工具换成android studio 有点蒙蔽了,通过在网上找了一资料,android studio还是可以生成jar的,在这里与大家共享一下
1.首先需要在你要生成jar的moudle下的gradle文件添加如下配置
def SDK_BASENAME = "QucklyPay";
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/**'])
baseName = SDK_BASENAME + SDK_VERSION
destinationDir = file(sdkDestinationPath)
}
makeJar.dependsOn(deleteBuild, build)
SDK_BASENAME是你要生成jar的名字 SDK_VERSION是生成jar的版本号,可以直接输出你对外提供的jar名称
2.gradle配置完成后,然后在点击android studio右上角的gradle按钮,然后选择要打包的moudule下的other下面的makejar
然后你就可以在你的build下面找到你想要的jar包了
3.问题
在点击makejar的时候报了link问题,可以通过在gradle下配置忽略,然后编译就可以搞定了
lintOptions{
abortOnError false
}