Android studio打包生成Jar包

1.准备要打包的library

想打包成jar包的话就要先把要打包的内容library中,

首先创建一个Moudle,将要打包的内容放到这个Moudle中

然后在这个Moudle的.gradlez中进行如下配置

// 定义jar包名称
def SDK_BASENAME = "myjar";
// 定义jar包版本
def SDK_VERSION = "_v1.0.0";

def sdkDestinationPath = "build/outputs/jar/";
def zipFile = file('build/intermediates/packaged-classes/release/classes.jar')
task deleteBuild(type: Delete) {
    delete sdkDestinationPath + SDK_BASENAME + SDK_VERSION + ".jar"
}

// 这个task  后面的makeJar就相当于一个方法然后下面的makeJar.dependsOn就相当于调用这个方法参数就是上面的deleteBuild
task makeJar(type: Jar) {
    from zipTree(zipFile)
    from fileTree(dir: 'src/main', includes: ['assets/**']) // 打包assets目录下的所有文件

    baseName = SDK_BASENAME + SDK_VERSION
    destinationDir = file(sdkDestinationPath)
}
makeJar.dependsOn(deleteBuild, build)

 

直接加载dependencies的下面就可以了,如下图位置Android studio打包生成Jar包_第1张图片

如果打包的时候需要混淆的话

Android studio打包生成Jar包_第2张图片

将minifyEnabled设置为true

混淆的东西后面再说

 

2.所有的内容都添加到library中之后就可以进行打包了

在Terminal命令窗口下输入打包命令

gradlew makeJar

 

直到编译成功,显示BUILD SUCCESSFUL,提示打包成功了就可以了,如果成功的话就可以在output中找到这个打好的jar包了

文件位置在

Android studio打包生成Jar包_第3张图片

有的时候会出现一些问题,比如
Unzipping C:\Users\Administrator\.gradle\wrapper\dists\gradle-4.10.1-all\455itskqi2qtf0v2sja68alqd\gradle-4.10.1-all.zip to C:\Users\Admin
istrator\.gradle\wrapper\dists\gradle-4.10.1-all\455itskqi2qtf0v2sja68alqd
Exception in thread "main" java.util.zip.ZipException: error in opening zip file
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.(ZipFile.java:225)
        at java.util.zip.ZipFile.(ZipFile.java:155)
        at java.util.zip.ZipFile.(ZipFile.java:169)
        at org.gradle.wrapper.Install.unzip(Install.java:215)
        at org.gradle.wrapper.Install.access$600(Install.java:27)
        at org.gradle.wrapper.Install$1.call(Install.java:75)
        at org.gradle.wrapper.Install$1.call(Install.java:48)
        at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
        at org.gradle.wrapper.Install.createDist(Install.java:48)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)

这种情况可能是你对应的gradle包没有下载完全,可以移步到

https://blog.csdn.net/u013802387/article/details/79277726

下载相应的gradle版本,然后替换其中的内容即可编译成功

你可能感兴趣的:(Android)