Eclipse Android项目,如何在工作区中引用库?

发布于 2025-01-05 18:53:15 字数 1166 浏览 0 评论 0原文

我按照我在这里找到的一些步骤(现在找不到 URL,抱歉)将 Eclipse 中的 Android 项目转换为布局,其中 99.9% 的代码位于库项目中,然后我在下面还有另外 2 个 shell 项目相同的工作区,主要只是 AndroidManifest.xml 文件和一些资源文件。这样做是为了我可以支持同一项目的 2 个版本,两个版本之间只需进行一些细微的文本/图标更改。应用程序名称也不同,因此我可以同时在 Android Market 上发布这两个版本。

自从我这样做以来,大约每编译 10 次,也许每一两天一次,我都会收到“dalvik 错误 1”和有关“Access 已存在”的信息(Access 是我的库项目中第一个 Java 单元的名称) 。

为了“解决”这个问题,我进入我正在尝试构建的存根项目的 Java 构建路径,并从库选项卡的主库中删除 JAR 文件。然后我就可以构建而不会出现错误。

然后一段时间后(也许 1 或 2 天),当我编译我的存根项目(不是我的库)时,我会收到有关缺少类的错误。因此,我将返回到 Java 构建路径,并将对 JAR 文件的引用放回原处,一两天后一切都恢复正常,然后我又回到与之前相同的错误。

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

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

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

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

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

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

此时我们正处于最后的测试阶段,所以我日常的日常任务是:

  1. 在 LIB 项目中进行较小的更新(错误修复)

  2. < p>使用发布向导导出两个项目并更新 Android Market 和我们保存 APK 文件的其他位置

所以我像那些保持简单的步骤,无需打开/关闭多个工作区或如果可能的话经历很多构建步骤。

I followed some steps I found here (can't find the URL right now, sorry) to convert my Android project in Eclipse to a layout where 99.9% of my code is in a library project, and then I have 2 other shell projects under the same workspace that are mostly just the AndroidManifest.xml files, and a few resource files. This was done so I can support 2 builds of the same project, with just some minor text/icon changes between the 2. The application name is also different so I can publish both on the Android Market at the same time.

Ever since I did this, about every 10 times I compile, maybe once every day or two, I get "dalvik error 1" and something about "Access already exists" (Access being the name of the first Java unit in my library project).

To "work around" the issue I go in to the Java Build path for my stub-project that I am trying to build, and remove the JAR file from my main library from the libraries tab. Then I can build without the error.

Then a while later (maybe 1 or 2 days) I'll get an error about missing classes when I compile my stub-project (not my library). So I'll go back to the Java Build path and put the reference to the JAR file back in, and all is good again for 1 or 2 days, then I'm back to the same error as before.

Is this just a known issue and something I need to do, or can I resolve by a restructure of my projects/workspaces? Currently I have:

Lib Project - only has 2 libs on build path: Android 2.1 and com.android.ide.eclipse.adt.LIBRARIES

First stub project that uses above lib - has the same 2 libs as above project, plus sometimes I use "Add JAR" to include the JAR from the above project's bin\ folder.

2nd stub project - same libs as first stub project

Should I reference the JAR from my "lib project" using one of the other tabs under build path options? Maybe the "Project" tab instead, or the "Source" tab? I don't currently have it under any of those other areas.

When I get in to the weird state, doing a "Clean project" also doesn't help, I've tried that several times and open/close the IDE between cleaning, to no resolve.

At this point we are in the final testing stages, so my normal daily task is:

  1. Make a minor update (bug fix) in the LIB project

  2. Use the publish wizard to export both projects and update Android Market and other places we keep the APK files

So I'd like those steps to stay simple, without having to open/close multiple workspaces or go through a lot of build steps if possible.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤蝉 2025-01-12 18:53:15

经典的 Eclipse/Java 方式

添加(工作区)库

  • 右键单击​​要插入的项目。
  • 单击“属性”。
  • 选择Java 构建路径
  • 选择选项卡。

现在,这取决于您如何编译库。
因此,要么执行添加 JAR... 要么执行添加类文件夹
选择external 变体以使用外部源。
就是这样。

添加工作区项目

  • 右键单击​​要插入的项目。
  • 单击“属性”。
  • 选择Java 构建路径
  • 选择项目选项卡。

单击右侧的添加...,即可完成。

附加的 Android 方式

需要执行两个步骤:

  • 将要用作库项目的项目
  • 标记为引用标记的项目

标记库项目

右键单击​​您的项目并选择 Properties
选择左侧的 Android 并勾选 IsLibrary 复选框。完毕。

引用标记的项目

右键单击您的项目并选择属性
选择左侧的 Android添加... 您标记的项目。它将被添加到列表中并可供使用。现在您可以从引用的、标记的项目中访问所有类和资源(例如可绘制对象、字符串)。太棒了,嗯? :)

The classical Eclipse/Java way

Add a (workspace) library

  • Right click the project you want to insert in.
  • Click Properties.
  • Select Java Build Path.
  • Select the Libraries tab.

Now, it depends how you compile your library.
So either do an Add JARs... or an Add Class Folder.
Choose the external variant to use an external source.
That's it.

Add a workspace project

  • Right click the project you want to insert in.
  • Click Properties.
  • Select Java Build Path.
  • Select the Projects tab.

Click Add... on the right side and you are done.

The additional Android way

Two steps are necessary:

  • Mark the project you want to use as library project
  • Reference the marked project

Mark the library project

Right click your project and select Properties.
Select Android on the left and tick the checkbox IsLibrary. Done.

Reference the marked project

Right click your project and select Properties.
Select Android on the left and Add... your marked project. It will be added to the list and is ready to use. Now you are able to access all classes and ressources (e.g. drawables, strings) from the referenced, marked project. Awesome, eh? :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文