如何为Android库项目创buildjar

我必须创build一个库,我要导出到一个jar文件的客户端。 有没有办法创build一个与它的资源的jar子?

Google adMob有这样一个jar包,其中包含资源文件,例如R $ layout.class。 本页介绍了一些方法来做到这一点,但我不能确切地了解如何使用上述方法将库项目导入到应用程序。

Related of "如何为Android库项目创buildjar"

这是你可以得到的最接近的:

步骤#1:创build一个常规的Android库项目,并得到它的工作。

步骤#2:将Android库项目复制到另一个目录。

第3步:从原始Android库项目中编译的Java类创build一个JAR,并将该JAR放入步骤#2中的副本的libs/目录中。 您应该可以手动在此JAR上运行ProGuard,尽pipe我没有尝试过。

步骤#4:删除复制的库项目的src/目录中的所有内容,留下并清空src/目录。

第5步:压缩或以其他方式分发复制的Android库项目。

这会给你一个像Play Services一样的Android库项目,其中资源是可用的,但是源代码不是。

更新 :现在更好的方法是将你的库项目打包为AAR,这是Android的本地方式,从编译的代码和所需的资源中创build可重用的工件。 目前(2014年7月),Gradle for Android,Android Studio和android-maven-plugin可以创build和使用AAR。

这工作!

  1. 通过取消selectIsLibrary标志使您的图书馆项目成为正常的项目。
  2. 以Android应用程序执行您的项目。 (它不会显示任何错误)
  3. 您将在.apk文件夹中find.jar文件。
  4. 给你.jar谁想要使用你的图书馆。
  5. 告诉他们只需将外部jar导入构buildpath。

这对所有的资源都可以正常工作。 感谢你们。 为你的回应

按照以下步骤获取库的可分发jar(无需外部依赖项,对库项目进行validation):

  1. 创build你的图书馆项目。 打扫。 您将在bin文件夹中获得一个libraryProjectName.jar文件。 (确保库项目中select了“库”。
  2. 将.jar文件复制到目标应用程序libs文件夹中
  3. 刷新您的工作空间,并按Ctr+Shift+O (在Windwows / Linux上)或Cmd+Shift+O (在Mac上)来解决添加库中的任何导入依赖项。

在遇到任何问题的情况下评论。

用adt 22.2.1testing

  1. 创build你的图书馆项目
  2. 创build空项目
  3. 将库项目添加到您的空项目
  4. build立项目
  5. 在/ gen文件夹中,你会发现你的库项目的类,这将包含你的资源为lib项目。
  6. 导出JAR(从/ gen文件夹中只select这个类)
  7. 从lib项目导出JAR
  8. 将导出的文件重命名为压缩和合并内容
  9. 将最终文件重命名为JAR并将其添加到项目中。

你不能将资源文件打包成jar。 您可以将项目导出为库项目。

你导出你的实用工具类,不引用在Android的资源,即纯Java类作为jar文件。

检查下面的链接

http://developer.android.com/tools/projects/index.html

使您的项目成为一个图书馆项目

右键点击你的项目。 去属性。 selectAndroid。 确保选中了库。

在你的android项目中引用库项目

右键点击你的项目。 去属性。 selectAndroid。 点击添加。 浏览和图书馆项目。

从文档引用

一个库项目不同于标准的Android应用程序项目,因为你不能直接编译它自己的.apk文件,然后在Android设备上运行它。 同样,您也不能将库项目导出为自包含的JAR文件,就像为真正的库一样。 相反,您必须通过引用相关应用程序中的库并构build该应用程序来间接编译库。

这里用ant做一个简单的方法,在Volley源代码中find这个。 将下面的代码添加到custom_rules.xml,然后用ant jar构build

 <?xml version="1.0" encoding="UTF-8"?> <project name="volley-rules" default="help"> <!-- A rule to generate the JAR for inclusion in an Android application. Output file will be bin/volley.jar --> <target name="jar" depends="-compile"> <jar destfile="bin/volley.jar" basedir="bin/classes" /> </target> </project> 

使用Eclipse ADT v22.6.2,您可以通过单击File-> Export-> Java-> Jar File来导出jar,select目录和目标保存位置。

按照最新的Android Studio v1.2,它像一个蛋糕一样简单。 已经在这个链接上回答完整的解决scheme和屏幕截图