R.java
файл, создаваемый плагинами Android Eclipse при создании приложения R.java
создается в каталоге "gen". Этот файл генерируется из информации в каталоге "res". Если вы запустите команду «Проект» -> «Очистить ...» в меню Eclipse, она удалит, а затем заново создаст R.java
файл.
Проблема «R не может быть решена» возникает, когда вы меняете имя пакета в AndroidManifest.xml
файле. Он использует имя вашего пакета Android для создания подкаталога в каталоге «gen», где хранится R.java
файл.
Eclipse может иметь проблемы с выполнением clean, потому что он не R.java
понимает, где находится файл, когда вы изменили имя пакета Android. Вы можете либо переименовать подкаталог gen
в соответствии с вашим новым именем пакета, либо вы можете изменить свое имя пакета обратно на старое имя. Сделайте чистку, а затем измените имя пакета на новое имя, которое вы хотите. Это работает лучше всего, если вы останавливаете Eclipse от попыток сборки во время изменения имени пакета. В меню «Проект» снимите флажок «Автоматически строить», а также когда диалоговое окно «Очистить ...» спросит, следует ли ему «Начать сборку немедленно», снимите флажок, чтобы он не пытался строить во время изменения название пакета. После того, как вы изменили имя, вы можете снова включить «Автоматическая сборка».
Обратите внимание: если имя вашего AndroidManifest.xml
файлового пакета не совпадает с именем вашего Java-пакета, Eclipse автоматически добавит «import <имя вашего Android-пакета> .R;» строка во всех ваших .java
файлах, которые имеют какие-либо ссылки на R. Если вы измените AndroidManifest.xml
имя вашего пакета, иногда Eclipse не обновляет все эти добавленные импорта. Если это произойдет, используйте рефакторинг Eclipse ( ALT+
Shift+ R), чтобы изменить оператор импорта в одном из ваших файлов Java на новое AndroidManifest.xml
имя пакета. Лучше всего делать это, пока вы отключили «Автоматически строить».