1

我们有一个共享的 intellij 项目,我们用它来构建我们的 android 应用程序。一个人(大约 10 人)最近遇到了构建错误:

android-apt-compiler: [ui] <path>\strings.xml:454: error: Resource entry <name> is already defined.

查看它,果然有重复的字符串资源定义,都在同一个strings.xml 文件中。这些应该是固定的,因为这根本没有意义。

但我不明白的是:尽管strings.xml 中有重复的条目,其他人都可以构建得很好。我认为我们的全局或项目设置(尽管项目是共享的)之间存在一些我看不到的差异。

关于在哪里看的任何想法?谢谢你。

4

2 回答 2

1

我能够通过降级到 IntelliJ 13.0.3 并从 maven 重新导入我的项目来解决这个问题。YMMV

于 2014-05-06T02:08:19.397 回答
0

我们今天刚刚遇到了类似的问题。当我们的一位开发人员第一次尝试构建项目时,构建失败,引用 strings.xml 中的重复节点。实际上,strings.xml 中有重复项,但这在以前不是问题,其他人都可以使用相同的 strings.xml 构建相同的项目而不会出现问题。

在我们的例子中,解决方案是在 intellij 项目的“项目结构”设置中找到的。我们的项目引用了其他一些“Android 库”项目,但无法构建的开发人员没有在相关模块的“Android”配置节点中勾选“库项目”复选框。勾选此复选框后,项目构建成功,我们确认取消选中该框将导致编译失败。

我不能说为什么这个选项会产生这种效果,但在我们的例子中,这就是解决方案。

于 2013-09-13T19:13:28.303 回答