R.java исчезает после очистки проекта - PullRequest
32 голосов
/ 09 октября 2010

После того, как я добавил несколько файлов .png в свою папку для рисования Project Workspace, я обновил свои рисованные папки в Eclipse, и обнаружились вновь добавленные файлы.Но когда я попытался получить доступ к этим ресурсам с помощью R.drawable.xyzimage, xyzimage, хотя и в папке, не удалось разрешить.

Итак, я сделал Project Clean и угадаю, что после того, как этот чистый R.java полностью исчез, и все мои классы, получающие доступ к ресурсам с помощью R.java, показывают все виды ошибок, и Eclipse не позволит мне запустить кодбольше.

У меня есть резервная копия моего исходного кода, но я хочу выяснить, можно ли регенерировать R.java и как?

Спасибо за помощь.

Ответы [ 34 ]

55 голосов
/ 10 октября 2010

Попробуйте Project-> Clean в Eclipse.Из моего ограниченного опыта, если R.java не создается автоматически, то где-то в вашем XML-файле есть ошибкаТройной проверь все.

9 голосов
/ 10 октября 2010

Вы должны построить проект, чтобы иметь возможность использовать вновь добавленные ресурсы.

Очистка проекта удаляет все автоматически сгенерированные файлы. Строя проект, он должен автоматически их создавать. Когда вы очищаете проект, есть возможность начать сборку сразу после очистки.

Вот несколько вещей, которые вы можете попробовать (проделал ту же процедуру после удаления каталога " gen " вручную.

  • После удаления каталога gen перейдите в Проект> Очистить ...
  • У вас должны быть ошибки, указывающие, что R не может быть преобразована в переменную. Щелкните правой кнопкой мыши по вашему проекту в Package Explorer и выберите Build Project. Убедитесь, что опция «Автоматическая сборка» отключена (снимите флажок в «Проект»> «Автоматическая сборка»).
  • Ошибки относительно R теперь должны были исчезнуть. Теперь выполните Project Clean еще раз. Все ошибки должны исчезнуть.

Дайте мне знать, если это работает для вас.

4 голосов
/ 10 октября 2010

Вот в чем проблема.Я добавил эти новые png-изображения в проект, и у Android есть правила относительно того, какие символы разрешены в именах этих изображений.Как только я изменил заглавные буквы в имени изображения, оно снова вернулось на круги своя, и Build автоматически сгенерировал файл R.java, и все ошибки исчезли.Консоль Eclipse - это место, где я нашел все ошибки, связанные с моими ресурсами.

Спасибо, ребята .... Я попробовал ваши решения, но моя ошибка была чем-то конкретным, что было связано с моим соглашением об именовании изображений, так что этокак я это исправил.

3 голосов
/ 12 июля 2011

Я бы согласился, что обычно это проблема XML, но, кроме того, это проблема внутри вашей папки res, которая может быть выделена красным крестиком после попытки очистки.проблема, и это потому, что я создал свою собственную папку с именем «data» в папке res.После чистки на ней был маленький красный крестик.Я удалил эту папку и снова собрал R.

С уважением, Марк

2 голосов
/ 23 января 2011

В моей папке res / drawable был неверный jpg.Я удалил JPG, и это сработало.

2 голосов
/ 09 сентября 2011

У меня тоже была эта проблема на моем Mac, и я думаю, что было бы полезно узнать для всех пользователей Mac, как мне удалось решить эту ошибку.

У меня был файл .DSStore, автоматически импортированный в мой проект внутрикаталог res, и когда я удалил его и перестроил проект, все прошло хорошо.

2 голосов
/ 10 октября 2010

Несколько вещей, которые вы должны проверить в своем проекте:

  • Проверьте вкладку «Проблемы» в Eclipse IDE. Вы уверены, что не создавали проблем со сборкой при внесении изменений в Drawable? Чтобы убедиться, что вам нужно проверить xml-источник затронутого макета и посмотреть, помечено ли что-то красным.

  • В проводнике перейдите в каталог, где находится ваш проект Android. Убедитесь, что у вас есть файл default.properties (там должны быть .classpath, .project и AndroidManifest.xml). Если default.properties отсутствует, его можно легко заменить на правильную версию.

  • С какой версией Android вы работаете? Если это значение 1,5 или ниже, убедитесь, что в каталоге res имеется каталог с именем drawable , а не drawable-hdpi , drawable-mdpi и drawable-ldpi . Последние три действительны для версии 1.6 и выше.

  • Щелкните правой кнопкой мыши свой проект в проводнике пакетов в Eclipse. Вы получите ряд вариантов. Перейдите в Инструменты Android-> Исправить свойства проекта и посмотрите, поможет ли это.

2 голосов
/ 26 февраля 2013

Каждый раз, когда вы очищаете проект и восстанавливаете его, он импортирует

import.android.R

Итак, удалите этот импорт и удалите все ошибки из XML-файлов. Это будет работать.

1 голос
/ 02 ноября 2012

Это может быть просто, но убедитесь, что вы не используете

import android.R;

1 голос
/ 01 февраля 2015

Проверьте в Console View Если там есть сообщение об ошибке, это поможет вам выяснить источник проблемы.У меня была похожая проблема, и я обнаружил, что проблема была в имени картинки, даже если имя соответствует синтаксису, поэтому я изменил его на img1, и он работал нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...