如何从 android studio 创建 jar 文件

how to create a jar file from android studio

我有一个相当最新版本的 android studio,我在一个基本上应该是库的项目下创建了一个模块,当我构建它时,它会创建一个“.aar”文件,我想要的是 .jar 文件,因为这个库也应该与 eclipse 一起使用。

该库也包含 activity,有没有什么方法可以创建我也可以在 Eclipse 上使用的 .jar 文件 Android Studio?

我已经创建了这个模块并尝试构建,结果它生成了 .aar 文件而不是 .jar 文件。

目前基于 gradle 的构建似乎不允许使用 android studio 创建 jar,我决定使用 Intelij,它有必要的选项并且可以做我想做的,我可以使用社区版.

***更新**** 即使由 Intelij 生成的带有资源的 jar 也不起作用,显然拥有带有资源的 jar 并不容易,因此决定选择 .aar 并希望 Eclipse 在 gradle 支持时也获得对 .aar 的支持。 ,因为这是我最关心的问题。

aar 与 AS 或 eclipse 无关,而是 AandroidARchive for Android JavaARchives 等应用程序适用于 java 应用程序。 因为Android是基于java的,所以可以使用jar。但是考虑到 android 特性,比如资源包,aar 是正确的选择。

我找到了一种实现此目的的方法,简单明了,使用 Gradle 2.2.1:

task jar(type: Jar, dependsOn: 'assembleRelease') {
    from fileTree(dir: 'build/intermediates/classes/release')
}

将其放入您的库模块中。 它将编译为发布并生成一个 JAR 文件:build/libs.

bash gradlew jar 或使用您的 IDE 来定位 jar Gradle 任务。

将此添加到您图书馆的 gradle 文件中:

task deleteJar(type: Delete) {
    delete 'libs/traylib.jar'
}

task createJar(type: Copy) {
    from('build/intermediates/packaged-classes/release/')
    into('libs/')
    include('classes.jar')
    rename('classes.jar', 'traylib.jar')
}

createJar.dependsOn(deleteJar, build)

您需要检查生成的 classes.jar 的路径:build/intermediates/packaged-classes/release/

如果您的 lib 根文件夹中没有 lib 文件夹,请创建该文件夹

转到 gradle 构建:Android Studio --> 查看 --> Toll Windows --> Gradle

Select 你的模块(:library) --> 任务 --> 其他 --> 双击 createJar 任务

您只需简单地解压缩 aar 文件即可获得分离的文件片段。