Android Studio将Android库项目导出为jar

时间:2015-10-15 13:13:29

标签: android android-studio jar android-gradle build.gradle

我正在开发Android库项目。在Eclipse中,当我想将其导出为jar文件时:

  1. 右键单击Project-> Export-> Java-> Jar文件
  2. 我从src手动选择了一些软件包,那就是它(没有res等等!) - 这是我图书馆的要求......
  3. 在复选框中,我检查:"导出生成的类文件和资源"。那就是它。
  4. 现在我已迁移到Android Studio,因此在进行了一些SO讨论之后,我在gradle.build下提出了这个问题:

    task clearJar(type: Delete) {
        delete 'build/outputs/mysdk.jar'
    }
    
    task makeJar(type: Copy) {
        from('build/intermediates/bundles/release/')
        into('build/outputs/')
        include('classes.jar')
        rename ('classes.jar', 'mysdk.jar')
    }
    
    makeJar.dependsOn(clearJar, build)
    

    当我将Jar集成到一些Android应用程序中时,无法正常工作,表明导出Jar的过程出了问题(库项目没有错误/警告等)。

    如何在Android Studio中实现导出到eclipse jar的类似行为?

    谢谢,

1 个答案:

答案 0 :(得分:1)

您不希望生成jar文件,因为res/文件夹将丢失,并且在您的代码中引用R文件的任何内容在执行时都将失败。这是因为jar格式不支持android res。您希望构建以aar格式为目标。这很简单,使用gradle。而不是应用应用程序插件(apply plugin: 'com.android.application'),只需应用库插件(apply plugin: 'com.android.library')。

然后gradle build会生成一个aar文件,其中包含您的所有资源。

仍在使用eclipse的开发人员将熟悉如何导入aar文件,因为这是android标准。如果他们尚未学习,那么有很多SO帖子可以提供帮助。

使用gradle或maven的开发人员在使用sdk时没有任何问题