在Android Studio中生成Jar文件

时间:2015-02-25 08:00:02

标签: android jar android-studio

我在Android Studio中有一个库项目。我想为这个库生成一个.jar文件。我需要这个图书馆项目jar file contain/include all the dependencies

问题是我无法找到生成jar文件的方法。有什么办法可以为我的项目生成一个jar文件吗?

最好的问候

2 个答案:

答案 0 :(得分:1)

HereGradle任务的示例,它从.jar创建classes.jar

classes.jar文件可以在/build/intermediates/exploded-aar/文件夹中找到。

修改 为每个Android Librar项目创建jar文件并单独分发它们。那些库项目所需的依赖项 - 在最终项目中添加这些依赖项,将使用您的库。

例如:您Android Library项目MyLibProject,其在build.gradle

中具有以下依赖关系
dependencies {
    compile "com.android.support:support-v4:19.+"
}

当您构建项目时,classes.jar将获得MyLibProject,而classes.jar只包含来自库项目的类,但不包含来自com.android.support:support-v4:19.+的类。

在另一个项目中,您在classes.jar中添加build.gradle作为库依赖项,并定义与MyLibProject中相同的依赖项。

如果您仍然需要fatJar,请查看here如何使用fatJar创建Gradle

答案 1 :(得分:1)

如果在Gradle中将代码设置为普通Java模块,那么让Gradle为您提供包含内容的jar文件非常容易。该jar文件只包含您的代码,而不是它依赖的其他Apache库。我建议这样分发;将依赖项捆绑到库中是有点奇怪的,这些库的用户必须自己包含这些依赖项更为正常(因为否则这些项目的冲突已经链接了库的副本,可能是不同的版本)。更重要的是,如果您要发布图书馆,可以避免重新分发其他人的代码时出现潜在的许可问题。

将需要编译的代码转换为jar,并将其移至Android Studio中的单独普通Java模块:

File menu > New Module... > Java Library
Set up the library, Java package name, and class names in the wizard. (If you don't want it to create a class for you, you can just delete it once the module is created)
In your Android code, set up a dependency on the new module so it can use the code in your new library:
File > Project Structure > Modules > (your Android Module) > Dependencies > + > Module dependency. See the screenshot below: 

enter image description here

从出现的对话框的列表中选择您的模块:

enter image description here

希望您的项目现在应该正常建设。完成构建后,Java库的jar文件将放在模块目录的build / libs目录中。如果要手动构建jar文件,可以从Gradle窗口运行其jar构建文件任务:

enter image description here

此处的Oroginal文章:How to make a .jar out from an Android Studio project