我遵循了在这里找到的一些步骤(对不起,现在无法找到URL),将Eclipse中的Android项目转换为99.9%的代码在库项目中的布局,然后在下面有2个其他Shell项目相同的工作空间,大部分只是AndroidManifest.xml文件和一些资源文件。这样做是为了使我可以支持同一项目的2个构建,而2个之间只有一些小的文本/图标更改。应用程序名称也不同,因此我可以同时在Android Market上发布它们。

自从执行此操作以来,大约每10次编译一次,也许每天一两次,我就会收到“dalvik错误1”,而有关“Access已经存在”的信息(Access是我的库项目中第一个Java单元的名称) 。

为了“解决”该问题,我进入了我要构建的 stub 项目的Java Build路径,并从“库”选项卡中从主库中删除了JAR文件。然后,我可以构建而不会出现错误。

然后过了一会儿(可能是1或2天),当我编译 stub 项目(而不是我的库)时,会收到关于缺少类的错误。因此,我将返回到Java Build路径,并将对JAR文件的引用放回去,并且在1或2天后一切都恢复正常,然后回到与以前相同的错误。

这只是一个已知问题,还是我需要做的事情,还是可以通过重组项目/工作区来解决?目前我有:

Lib Project-构建路径上只有2个库:Android 2.1和com.android.ide.eclipse.adt.LIBRARIES

使用上述lib的第一个 stub 项目-具有与上述项目相同的2个lib,另外有时我使用“添加JAR”来包含上述项目的bin\文件夹中的JAR。

第二个 stub 项目-与第一个 stub 项目相同的库

我是否应该使用“构建路径”选项下的其他选项卡之一来引用“lib项目”中的JAR?也许是“项目”标签,还是“来源”标签?我目前在其他任何领域都没有。

当我进入怪异状态时,执行“清理项目”也无济于事,我尝试了几次,并在清理之间打开/关闭IDE,但没有解决方法。

至此,我们处于最后的测试阶段,因此我的日常任务是:

  • 在LIB项目
  • 中进行较小的更新(错误修复)
  • 使用发布向导导出两个项目,并更新Android Market和我们保留APK文件的其他位置

  • 因此,我希望这些步骤保持简单,而不必打开/关闭多个工作区或尽可能地执行很多构建步骤。

    最佳答案

    经典的Eclipse/Java方式
    添加一个(工作区)库

  • 右键单击要插入的项目。
  • 单击Properties
  • 选择Java Build Path
  • 选择Libraries选项卡。

  • 现在,这取决于您如何编译库。
    因此,可以使用Add JARs...Add Class Folder
    选择external变体以使用外部源。
    而已。
    添加工作区项目
  • 右键单击要插入的项目。
  • 单击Properties
  • 选择Java Build Path
  • 选择Projects选项卡。

  • 单击右侧的Add...,即可完成操作。
    额外的Android方式
    必须执行两个步骤:
  • 标记要用作库项目的项目
  • 引用已标记的项目

  • 标记图书馆项目
    右键单击您的项目,然后选择Properties
    选择左侧的Android,然后勾选IsLibrary复选框。完毕。
    引用标记的项目
    右键单击您的项目,然后选择Properties
    选择左侧的Android,然后选择标记的项目Add...。它将被添加到列表中并可以使用。现在,您可以从已标记的引用项目中访问所有类和资源(例如可绘制对象,字符串)。太好了吧? :)

    09-30 15:25
    查看更多