Android Studio gradle脚本打包Jar包含资源文件

        使用Eclipse的时候打包jar很方便,换成Android Studio之后jar包就不那么方便了,尤其是移植过来的Eclipse的项目。手头上有个SDK要维护,接手的时候是Eclipse下的项目,lib跟demo是分开的,说白了lib也是一个独立的工程。接过来就Studio下放到一个工程里了,demo是app,lib就是lib的module。

        问题来了,studio默认是生成的是arr不是Jar!WTF!好吧,当时还是gradle小白,然后就找了各种打包jar的脚本,五花八门,线面就介绍下我用的脚本(以mac为例)。

1. 首先配置gradle脚本

        先配置环境变量:

        1)终端输入 cd ~切换到home,然后 open -e .bash_profile,如果没有的话先touch。2)输入环境变量: 

        export PATH=$PATH:/Applications/Android\ Studio.app/Contents/gradle/gradle-4.1/bin

        export ANDROID_HOME=~/Library/Android/sdk

        3)source .bash_profile 更新环境变量

        4)gradle -v 如下就正常了

2 写脚本

脚本其实很简单的,lib的build.gradle如下:

//脚本开始

applyplugin:'com.android.library'

android {

compileSdkVersion26

    buildToolsVersion"26.0.2"

    lintOptions {

abortOnError false

    }

defaultConfig {

minSdkVersion14

        targetSdkVersion21

        compileOptions {

sourceCompatibility JavaVersion.VERSION_1_8

            targetCompatibility JavaVersion.VERSION_1_8

        }

}

buildTypes {

release {

minifyEnabled true

            proguardFiles'proguard.cfg'    //别忘了混淆

        }

}

}

dependencies {

compile'com.android.support:support-v4:26.0.2'

    compile files('libs/XXX.jar')

}

//打jar包

def SDK_BASENAME ="XXsdk"     //jar包的名字

def sdkJarPath ="build"                   //jar包的位置

def zipFile = file('build/intermediates/bundles/release/classes.jar')   //需要打包的jar

task makeJar(type: Jar) {

from zipTree(zipFile)

from fileTree(dir:'src/main',includes: ['assets/**'])  //需要加入的资源那文件

baseName = SDK_BASENAME

destinationDir = file(sdkJarPath)

}

makeJar.dependsOn(build)

//脚本结束

3 打包

在项目的终端输入 ./gradlew makeJar,最后会有

到此就可以了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,111评论 25 709
  • 参考资料:http://gold.xitu.io/post/580c85768ac247005b5472f9htt...
    zhaoyubetter阅读 13,795评论 0 6
  • 以下内容选自得到吴军老师的硅谷来信专栏,转载请注明原文出处。 萨尔茨堡 “是否愿意娶某某为妻(或者嫁给某某),照顾...
    Matrix101阅读 3,325评论 0 0
  • 25岁的我,好像才刚刚开始经历别人口中艰难的青春,整个人生好像陷入沼泽中,进退不得,只能看着自己一点一点往下陷。透...
    Miraclelife阅读 1,598评论 0 0
  • 不想苟且的等死,就生机勃发的去活。 ——题记 我总认为乔布斯真正的活过:他的...
    云在天上飘阅读 2,701评论 0 2

友情链接更多精彩内容