我有一个多模块 Android Maven 项目,它由多个项目和一个 Android 库项目 (baselib) 组成,我在其中运行非基于 Android 的 JUnit 测试。
只要我通过 Maven 运行测试,这就会起作用。当我使用 Run->As JUnit 测试通过 Eclipse 运行 baselib JUnit 测试时,我没有获得当前版本。这意味着 JUnit 测试中的更改在我进行 Maven 构建之前不会产生任何影响。
我考虑过将 bin 文件夹添加到 Eclipse 构建路径中,但我在 Eclipse 中收到一条错误消息:
Cannot nest output folder ...baselib-TRUNK/bin/classes inside ...baselib-TRUNK/bin
这在某种程度上是明确的。所以我考虑将 jar 本身添加到构建路径中。我将其添加为外部 jar 一次,然后添加为 jar 一次。但我仍然没有得到代码的当前版本,尽管如果我修改并保存一些代码,jar 的时间戳具有当前版本。 (在 Eclipse 中选中“自动构建”)。输出文件夹被 Eclipse 的构建路径配置识别为 .../bin/classes,它在 pom.xml 中设置。我还尝试添加 /bin/test-classes 来构建包含测试类本身的路径,但仍然没有新版本的代码。
为什么这无法获取当前版本?我该如何解决这个问题?
最佳答案
由于库项目位于同一个工作空间中,因此我们可以直接引用该项目。打开项目的首选项并单击“Android”部分。
现在,您将看到一个用于引用库项目的窗口。
单击“添加...”按钮,选择所需的项目,单击“确定”,然后单击“应用”。 只有标记为库的项目才能以这种方式选择和引用。如果您的项目没有出现,请打开他们的首选项并在此首选项窗口中标记“是库”框。
您的项目现在将引用这些库,包括您对它们所做的任何更改。如果您的库可能会发生变化,这比使用 jar 更好。否则,每次进行更改时都必须删除并重新添加 jar。
关于android - 将 Android 库项目添加到 Eclipse 构建路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16968153/