我已经创建了一个Android项目,并添加了一个外部JAR (hessian-4.0.1.jar)到我的项目。然后,我将JAR添加到构建路径中,并在Order和Export中勾选它。

Order和Export似乎被忽略了,并且在运行时缺少来自外部JAR的所有类。

在使用Eclipse插件构建Android应用程序时,是否有一种技巧可以正确地从外部JAR中包含所需的类?我不想使用ant或Maven。


当前回答

如果使用Android Studio,请执行以下操作(我已经复制并修改了@Vinayak b的答案):

在项目侧视图中选择项目视图(而不是Packages或Android) 在项目的根文件夹中创建一个名为libs的文件夹 将JAR文件复制到libs文件夹 侧视图将被更新,JAR文件将显示在您的项目中 现在右键单击您想要导入的每个JAR文件,然后选择“Add as Library…”,这将把它包含到您的项目中 在那之后,你所需要做的就是在你的代码中引用新类,例如。进口javax.mail。*

其他回答

在项目中创建一个文件夹(如lib),将jar复制到该文件夹中。 现在去配置构建路径从右击项目,在构建路径选择

'add jar'浏览到你创建的文件夹并选择jar。

事实证明,我没有很好地查看我的堆栈跟踪,问题不在于没有包括外部JAR。

问题是Android平台缺少javax.naming。*和许多外部JAR也依赖的其他包。

添加外部JAR文件,并在Eclipse中设置Order和Export与Android项目一样。

如果你正在使用gradle构建系统,请遵循以下步骤:

把jar文件放在你的android应用程序的libs文件夹中。你通常会在Project > app > libs中找到它。如果libs文件夹缺失,请创建一个。 将此添加到构建中。gradle文件你的应用程序(不是你的项目的build.gradle) 依赖关系{ 编译fileTree(dir: 'libs',包括:'*.jar') //其他依赖项 } 这将包括libs文件夹中所有可用的jar文件。

如果不想包含所有jar文件,那么您可以单独添加它。

编译文件树(目录:'libs',包括:'file.jar')

Android的Java API不支持javax.naming。*和许多其他javax。*的东西。您需要将依赖项包含为单独的jar。

我知道OP在结束他的问题时引用了Eclipse插件,但我在这里进行的搜索并没有指定Eclipse。Android Studio是这样的:

将jar文件添加到libs目录(如复制/粘贴) 右键单击jar文件并选择“Add as Library…” 点击“确定”下一个对话框或重命名,如果你选择。

就是这样!