Eclipse / ADT提供了数百个错误“已经定义了资源条目”

时间:2013-05-08 18:13:38

标签: android eclipse internationalization resources

我正在使用Linux上的Android Developer Tools(ADT)附带的最新Eclipse(ADT v21.1.0-569685)。 我继承了一个大型的Android项目,Eclipse不会构建它。

有数百个这样的错误:“错误:已经定义了资源条目”。

在res / values / string.xml中:     <string name="about">About</string>

在res / values-de / string.xml中:     <string name="about">Über</string>

据我所知,这是在Android上运行i18n的常用且正确的方法,但Eclipse将其视为错误。

这不是“已经定义”的错误,其中“主”资源和XML执行在其他地方被询问和回答。我没有运行任何XML转换,我在任何地方都没有“额外的”XML文件。

它似乎不是一个eclipse配置错误,因为如果我使用完全相同的条目创建一个小样本项目,则复制不会导致“已定义”错误。

2 个答案:

答案 0 :(得分:2)

当资源限定符的组合无效时,也会发生此错误。

例如,drawable-xhpdi-v1没有意义,因为直到v8才引入xhdpi。

答案 1 :(得分:2)

当res / raw目录下的几个文件共享相同的文件名(没有扩展名)时,发生了这种情况。比如,例如:

  • myFile.csv
  • myFile.zip

从此目录加载资源时,Android只需要标识符(在我们的例子中:raw / myFile):

int resId = res.getIdentifier("raw/myFile","raw", ctx.getPackageName()) ;

希望它有所帮助。