5

我有一个使用 maven-android 插件的 android 项目设置。该插件遵循 maven 输出文件夹的R.java文件位置(即target/generated-sources/r)。

但是,在 Eclipse 中使用此项目时,我无法将 aapt 配置为依赖该文件夹。

即使我手动进入项目属性并手动设置文件夹,ADT 插件也会进入并仅重置一些设置(即将/gen文件夹添加回源文件夹,并将输出文件夹恢复为/bin/classes而不是/target/classes),而离开 maven/target/generated-sources/r文件夹并破坏项目的构建。

我想在 Eclipse ADT 中使用默认的 Maven 文件夹结构。关于如何做到这一点的任何想法?

谢谢


回复评论:

  • 是的,我正在使用 m2e-android 插件。
  • 由于 ADT 仍在生成 R.java ,如果由于重复的类定义而/gen仍然存在 R.java ,则 Eclipse 将无法编译。target/generated-sources/r
4

2 回答 2

4

不幸的是,用于 M2E 的 Android 连接器不支持将生成的文件夹(如 ADT gen 文件夹)移动到其他目录。这是 ADT 的一个限制,尽管有一张票可以探索绕过这个限制的方法:

https://github.com/rgladwell/m2e-android/issues/68

如果您想保持更新,请在此票上发表评论。

于 2012-04-11T08:40:56.467 回答
1

这似乎对我有用:

让 ADT 将 gen 保留为源文件夹,但将该源文件夹的输出文件夹更改为/target/classes.

我可以在 eclipse 中构建,也可以从命令行使用 maven,在这两种情况下我都不会遇到重复的 R 类问题。本质上,Eclipse 在 中生成R.java文件/gen,而 maven 在中生成文件/target/generated-sources/r,但两种构建都将R.class文件放在 /target/classes 下。

注意:有一次我在using中添加/gen了一个额外的源目录,我不得不删除它。pom.xmlbuild-helper-maven-plugin

于 2012-05-04T17:59:59.943 回答