2012-01-02 89 views
5

我想在android库项目中使用phonegap。库项目编译就好了,但是当我尝试启动扩展DroidGap一个活动,我得到这个错误如何在Android库项目中包含jar文件

01-02 10:12:17.575: W/dalvikvm(316): Unable to resolve superclass of Lcom/***/***. 

我想这是因为phonegap.jar文件没有在Android的编译jar文件包括图书馆项目。我已经尝试过使用ant来构建,但它似乎不起作用。

编辑:我正在构建一个可用于其他android项目的android库。我正在使用标准的android library project,但是在这个扩展了phonegap.jar中的DroidGap类的lib项目中的活动正在崩溃,出现上述错误。

+0

检查了这一点:HTTP://计算器。com/a/6859020/28557 – 2012-01-03 07:11:51

+1

好像大多数人并没有理解你的外部JAR在库项目中,然后当你尝试从另一个android项目引用你的库项目时,它看不到JAR文件该库项目是依赖于 - 具有类似的问题我自己只有它更复杂,因为我的JAR文件是一些本地C类的JII接口,我也想跨多个项目共享! – 2012-03-22 12:51:55

回答

0

在您的项目中创建一个文件夹'lib'。把你的.jar文件放在lib文件夹中。选择你的.jar文件右键单击,选择buid path --->'add to build'。将添加您的.jar文件。现在你可以使用这个.jar文件类。

+0

我已经这样做了,但这似乎没有帮助。我认为,当你正在处理一个普通的android项目时工作正常,但在android库项目中包含jar文件不起作用。 – Ashok 2012-01-02 05:21:44

+0

我已经测试过,并且能够按照上述步骤添加和使用phonegap库类。 – 2012-01-02 05:27:02

+0

我使用了两个项目,一个是android项目,另一个是android库项目。我需要在android库项目中包含phonegap.jar。 android项目使用android库项目,并在android lib项目中启动一个活动,这似乎会导致事情崩溃。你是否也这样做,这对你有用吗? – Ashok 2012-01-02 05:37:10

0

我会建议不要手动创建'lib'文件夹。

相反:

右击项目 - >属性 -

  • 选择Java构建路径

  • 确保在顶部

    选择的选项卡
  • 点击添加外部JAR

然后找到你的JAR ...

基本上,你可能已经添加了PhoneGap.jar

+0

您是否建议不要链接android库项目,而是链接到由库项目创建的jar文件的链接。我不明白这会有什么帮助。我试了一下,它似乎没有帮助 – Ashok 2012-01-02 05:32:41

+0

你将不得不编辑你的问题,并解释更多具体细节......我可能不完全明白你想要做什么。如果您要链接到另一个仍然可以工作的库项目,则可以链接该库,然后按照我所描述的方式添加PhoneGap.jar。 – TryTryAgain 2012-01-02 05:39:25

0

的ADT(Android的开发工具Eclipse中以同样的方式插件)内置了对图书馆项目的创建和参考的支持。请参阅此tutorial第5部分中的示例。

0

尝试将文件夹的名称更改为libs而不是lib。

+0

“libs”文件夹在它们所在的项目中自动包含JAR。但如果它们只在共享项目的libs目录中,它们仍然不会自动包含它们。 – 2013-05-08 13:50:44

3

恐怕这是不可能的。结果jar文件将包含android库项目中定义的所有类和资源,但不包括添加到构建路径的外部jar文件。您将不得不使用该库将这些添加到最终的Android项目中。您也可以找到类似的问题在这么喜欢this one

+0

链接的问题/答案更详细地解释。但基本上,共享库项目是简单的容器和包装。最后,它只是将来源和资源投入到消费项目中;它不会在设置或库引用中复制,因此必须手动将它们复制到消费项目中。 – 2013-05-08 13:54:50

相关问题