AndroidStudio建立lib工程并导出jar包

第一种方式

1.建立一个工程,选择AndroidApplicationandroid

2.建立一个module选择Android Libraryapp

3.修改Library module的build.gradle文件,添加一下任务gradle

//task to delete the old jar
task deleteOldJar(type: Delete) {
    delete 'release/dynamicload.jar'
}

//task to export contents as jar
task exportJar(type: Copy) {
    from('build/intermediates/bundles/release/')
    into('release/')
    include('classes.jar')
    ///Rename the jar
    rename('classes.jar', 'dynamicload.jar')
}

exportJar.dependsOn(deleteOldJar, build)

4.打开Gradle面板,选择Tasks->Other->exportJar,并执行。ui

若是执行成功,会获得dynamicload.jarspa

 

第二种方式

1.建立一个工程,选择AndroidApplicationip

3.修改Library module的build.gradle文件,get

io

apply plugin: 'com.android.application'

修改成class

apply plugin: 'com.android.library'

 

defaultConfig修改成module

defaultConfig {
    minSdkVersion 24
    targetSdkVersion 25
}

 

添加一下任务

//task to delete the old jar
task deleteOldJar(type: Delete) {
    delete 'release/dynamicload.jar'
}

//task to export contents as jar
task exportJar(type: Copy) {
    from('build/intermediates/bundles/release/')
    into('release/')
    include('classes.jar')
    ///Rename the jar
    rename('classes.jar', 'dynamicload.jar')
}

exportJar.dependsOn(deleteOldJar, build)

4.打开Gradle面板,选择Tasks->Other->exportJar,并执行。

若是执行成功,会获得dynamicload.jar

 

另外一段脚本

引入assets和meta-inf文件
//打jar包
def SDK_BASENAME = "SkyDataReportImpl";
def sdkJarPath = "build";
def zipFile = file('build/intermediates/bundles/release/classes.jar')

task deleteOldJar(type: Delete) {
    delete 'build/SkyDataReportImpl.jar'
}

task makeJar(type: Jar) {     from zipTree(zipFile)     from fileTree(dir: 'src/main', includes: ['assets/**','META-INF/versioninfo.properties'])     baseName = SDK_BASENAME     destinationDir = file(sdkJarPath) } makeJar.dependsOn(deleteOldJar,build)

相关文章
相关标签/搜索