Android Studio - 已定义资源条目

Yah*_*din 23 java android android-studio android-gradle-plugin

使用Android Studio(Beta)编译我的Android应用程序后,出现以下错误:

Error:error: Resource entry background is already defined.
res\drawable-xhdpi-v4\background.9.png:0: Originally defined here.
Run Code Online (Sandbox Code Playgroud)

当我在res文件夹中有一个名为"background"的图像文件时,会发生这种情况.

然后我制作了它的9补丁版本并将其粘贴在同一个文件夹中.这意味着有2个文件具有相同的名称.所以我不出所料,我有这个错误.

但是我现在在我的代码和布局文件中删除了所有背景图像文件的实例(包括9补丁版本和原始图像),但我仍然有这个错误.

deu*_*aka 60

您可以尝试执行以下操作之一:

  • 清洁和建造或 gradle clean build assemble
  • 无效并重新启动Android Studio

  • "无效"部分是AndroidStudio/IntelliJ特定功能.它位于File> Invalidate Caches/Restart下.它的作用基本上是"刷新"IDE的状态,重新启动,以便再次重新初始化某些项目. (3认同)

小智 17

1 Build> Clean Project
2 Build> Rebuild Project


zai*_*orx 9

我正在使用Android工作室,我完全陷入同样的​​问题,我在网上找到的答案都没有帮助我解决问题,包括前一个问题.所以阅读错误消息的所有细节,发现这一行:

错误:任务':app:processDebugResources'的执行失败.

com.android.ide.common.internal.LoggedErrorException:无法运行命令:C:\ Users\user\AppData\Local\Android\android-studio\sdk\build-tools\android-4.4W\aapt.exe包 - f --no-crunch -IC:\ Users\user\AppData\Local\Android\android-studio\sdk\platforms\android-20\android.jar -MC:\ Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\manifests\debug\AndroidManifest.xml -SC:\ Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\res\debug -AC:\ Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\assets\debug -m -JC:\ Users\user\AndroidStudioProjects\DartsApp\app\build\generated\source\r\_spo --FC:\ Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\libs\app-debug .ap_ --debug-mode --custom-package com.dartstransit.dartsapp -0 apk --output-text-symbols C:\ Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\symbols\debug

错误代码:

1
Run Code Online (Sandbox Code Playgroud)

输出:

res\drawable-hdpi-v4\bus_w.png:0: error: Resource entry bus_w is already defined.
res\drawable-hdpi-v4\bus_w.jpg:0: Originally defined here.
Run Code Online (Sandbox Code Playgroud)

如您所见,在同一文件夹中有两个名为bus_w的文件,其中包含不同的扩展名.我已经从项目中删除了这些文件并仍然收到错误,所以我决定检查错误消息中编译器行中引用的项目的每个文件夹.终于发现文件夹中有一个文件bus_w.png的副本app\build\intermediates\res\debug\drawable-mdpi-v4.

我刚删除它,瞧,问题解决了.