我创建了一个Android项目,并将一个外部JAR(hessian-4.0.1.jar)添加到我的项目中。然后,我将JAR添加到构建路径,并在Order and Export中将其选中。
似乎忽略了Order和Export,并且在运行时缺少外部JAR中的所有类。
使用Eclipse插件构建Android应用程序时,是否有技巧从外部JAR中正确包含所需的类?我不想使用ant或Maven。
我创建了一个Android项目,并将一个外部JAR(hessian-4.0.1.jar)添加到我的项目中。然后,我将JAR添加到构建路径,并在Order and Export中将其选中。
似乎忽略了Order和Export,并且在运行时缺少外部JAR中的所有类。
使用Eclipse插件构建Android应用程序时,是否有技巧从外部JAR中正确包含所需的类?我不想使用ant或Maven。
Answers:
对于Eclipse
将外部JAR添加到您的Android项目或任何Java项目的一种好方法是:
libs
在项目的根文件夹中创建一个名为的文件夹libs
文件夹现在,右键单击Jar文件,然后选择Build Path> Add to Build Path,这将在项目中创建一个名为“ Referenced Libraries”的文件夹。
这样,您将项目转移到另一台计算机时,就不会丢失硬盘驱动器上正在引用的库。
对于Android Studio
请注意:如果您使用的是第三方库,则最好使用可传递依赖项,其中gradle脚本运行时Gradle脚本会自动下载JAR和依赖项JAR。
例如:编译“ com.google.android.gms:play-services-ads:9.4.0”
阅读有关Gradle依赖管理的更多信息
libs
(而不是lib
)
libs/
。不要手动修改构建路径。
是的,您可以使用它。方法如下:
如果您遇到一些问题,此视频可能会很有用。
我当前使用的是SDK 20.0.3,以前的解决方案都无法为我工作。
hessdroid在hess失败的地方工作的原因是因为两个jar文件包含为不同虚拟机编译的java。由Java编译器创建的字节代码不能保证在Dalvik虚拟机上运行。不保证由Android编译器创建的字节码可以在Java虚拟机上运行。
就我而言,我可以访问源代码,并能够使用我在这里描述的方法为其创建一个Android jar文件:https : //stackoverflow.com/a/13144382/545064
事实证明,我对堆栈跟踪的了解还不够好,问题不在于未包含外部JAR。
问题是Android平台缺少javax.naming。*和外部JAR也具有依赖关系的许多其他软件包。
在Android项目中,添加外部JAR文件以及在Eclipse中设置“顺序和导出”的工作符合预期。
如果您正在使用gradle构建系统,请按照下列步骤操作:
将jar
文件放入libs
您的Android应用的相应文件夹中。通常你会在找到它Project
> app
> libs
。如果libs
缺少文件夹,请创建一个。
将此添加到您的build.gradle
文件中app
。(不是您Project
的build.gradle
)
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
// other dependencies
}
这将包括jar
文件libs
夹中所有可用的文件。
如果不想包含所有jar
文件,则可以单独添加。
compile fileTree(dir: 'libs', include: 'file.jar')
在项目内创建一个文件夹(如lib),将jar复制到该文件夹。现在从右键单击项目来配置构建路径,在构建路径中选择
“添加罐子” 浏览到您创建的文件夹,然后选择罐子。
并非总是可以将.jar文件复制到Android项目的文件夹中。
特别是如果它是工作空间中另一个项目的输出,并且会不断更新。
为了解决这个问题,您必须将jar作为链接文件添加到您的项目中,而不是导入它(它将在本地复制)。
在用户界面中,选择:
项目->导入->文件系统-> yourjar.jar->(“选项”区域)高级->在工作区中创建链接。
链接保存在.project文件中:
<linkedResources>
<link>
<name>yourjar.jar</name>
<type>1</type>
<locationURI>PARENT-5-PROJECT_LOC/bin/android_ndk10d_armeabi-v7a/yourjar.jar</locationURI>
</link>
</linkedResources>
PARENT-5-PROJECT_LOC
表示相对于项目文件,最多5个目录(../../../../../)。
然后将其添加到库中:
项目->属性-> Java构建路径->库->添加jar-> yourjar.jar
在同一窗口中,选择“ 订购和出口”标签,并标记您的罐子,以便将其添加到apk中。