我是靠谱客的博主 糊涂泥猴桃,最近开发中收集的这篇文章主要介绍Android项目使用Kotlin语言生成Jar包 给非Kotlin项目引用,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

//添加以下方法
//执行 gradle -> wifisdk -> Tasks -> other ->makeKotlinJar
//在 build/libs 目录下生成 makeKotlinJar.jar 文件
// 这种方式生成的jar文件如果被kotlin app项目引用,则会出现kotlin库重复的错误,所以生成的jar
task makeJar(type: Jar) {
    archiveName 'wifisdkn_7_4_2.jar'
    //添加项目中java生成的class文件目录
    from('build/intermediates/classes/release/')
    //添加项目中kotlin生成的class文件目录
    from('build/tmp/kotlin-classes/release')
//    from(project.zipTree("libs/wiwide_sdk_7_4_1.jar"))

//    添加Kotlin库(方法1)
    from {
        String[] include = [
                "kotlin-runtime-${kotlin_version}.jar",
                "kotlin-stdlib-${kotlin_version}.jar"
        ]
        configurations.compile
                .findAll { include.contains(it.name) }
                .collect { it.isDirectory() ? it : zipTree(it) }
    }
    //    添加Kotlin库(方法2)
    //添加kotlin项目库(库文件从引用中查找,并复制到"libs/o/"目录)
    //如果生成的jar包要给Kotlin项目引用,则删除以下三行即可.
//    from(project.zipTree("libs/o/kotlin-stdlib-1.2.10.jar"))
//    from(project.zipTree("libs/o/kotlin-stdlib-jre7-1.2.10.jar"))
//    from(project.zipTree("libs/o/annotations-13.0.jar"))

    //makeKotlinJar.jar保存目录
    destinationDir = file('build/libs')

//    exclude('wiwide_sdk/BuildConfig.class')
//    exclude('包名/BuildConfig$*.class')
//    exclude('**/R.class')
//    exclude('**/R$*.class')
    exclude('android/**')

    //以下为此处第三方库需包含文件(gson、okhttp、okio)
//    include('com/**')
//    include('org/**')
//    include('kotlin/**')
    include('**/**')
//    include('okhttp3/**')
//    include('okio/**')
}
makeJar.dependsOn(build)

如果遇到错误,在android区间中添加以下配置

 

android {
    lintOptions {
        abortOnError false
    }

 

最后

以上就是糊涂泥猴桃为你收集整理的Android项目使用Kotlin语言生成Jar包 给非Kotlin项目引用的全部内容,希望文章能够帮你解决Android项目使用Kotlin语言生成Jar包 给非Kotlin项目引用所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部