Подтвердить что ты не робот

В моем проекте нет файла R.java

Я делаю Учебник Notepad, упражнение 2. Я начал с создания нового Android-проекта и выбрал Create from source для импорта загруженных исходных файлов для упражнения.

Но теперь я получаю много ошибок в Eclipse, и проблема в том, что нет сгенерированного класса R.java. Как я могу это решить? Папка gen/ пуста.


У меня есть ошибки на Notepadv2.java и в res/layout/note_edit.xml, и оба они, похоже, связаны с тем, что сгенерированный R.java отсутствует.

Вот мои инструкции import в Notepadv2.java:

import android.R;
import android.app.ListActivity;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter; 

Они создаются командой Eclipse Ctrl + Shift + O.

4b9b3361

Ответ 1

Перейдите к Project и нажмите Clean. Это должно, в частности, восстановить ваш файл R.java.

Также избавьтесь от любых операторов import android.R.*, а затем выполните очистку, о которой я говорил.

Очевидно, проблема Джонаса была связана с неправильными настройками сборки. Его целевая сборка была установлена ​​на Android 2.1 (SDK v7), где в его макете XML использовались элементы Android 2.2 (SDK v8) (параметр макета match_parent), из-за этого Eclipse не мог правильно генерировать файл R.java, который вызвало все проблемы.

Ответ 2

После целого дня, пытаясь найти, почему R файл не был сгенерирован, я обнаружил, что после установки Android SDK Tools r22 появилась новая опция в Инструменты: Android SDK Build Tools.

После его установки снова был создан R файл.

Ответ 3

теперь вы импортировали android.R вместо своего собственного R... Попробуйте взглянуть на "проблемы", если у вас есть ошибки в одном из ваших xml файлов... избавьтесь от import android.R и комментируйте все виды использования R. *

Очистка должна помочь, когда у вашего проекта нет других ошибок, поэтому проверьте файлы xml или имена файлов в папках res

Ответ 4

Возможно, u может использовать неправильную версию SDK. Щелкните правой кнопкой мыши на своем проекте. Выберите Свойства → Android. Обратите внимание, что 2.2 - это последний SDK. Проверьте его и посмотрите, скомпилирован ли он...

Изменить

Также выполните очистку после этого

Ответ 5

I Had a similar problem

Лучший способ определить эту проблему - идентифицировать предупреждения Lint:: * Щелкните правой кнопкой мыши по project > Android Tools > Run Lint: Common Errors *

  • Это помогает нам показывать некоторые ошибки, через которые мы можем исправить вещи которые заставляют R.java снова возродиться.
  • Следуя приведенным выше шагам, я обнаружил, что добавил несколько изображений файлы, которые я не использовал → Я удалил их → Это исправило проблема!

Наконец, очистите проект!

Ответ 6

У моей коллеги эта проблема - перезапуск eclipse исправил ее.

Ответ 7

Обновите Android SDK Tools в Android SDK Manager для версии 22.0.1. Это сработало для меня.

Ответ 8

  • Удалите строку "import R.java" из вашего кода. Это сделано Eclipse для решения проблемы.
  • Перейдите в файл "note_edit.xml". Где бы вы ни находили "match_parent" в качестве значения атрибута, замените его "fill_parent" или "wrap_content".
  • Сделайте чистую сборку. R.java будет сгенерирован автоматически.

Если у вас возникла эта проблема, значит, свойство match_parent не поддерживается в вашем контенте. Вместо этого используется "fill_parent".

"fill_parent: представление должно быть таким же большим, как и его родительское (минус заполнение). Эта константа устарела, начиная с уровня API 8 и заменяется match_parent."

Ответ 9

Установлен ли плагин Android?

Ваш проект должен быть типа андроида.

Ответ 10

На самом деле это ошибка в коде учебников. У меня была такая же проблема, и я наконец понял, что проблема была в файле "note_edit.xml".

Некоторые из атрибутов layout_heigh/width были установлены как "match_parent", который не является допустимым значением, они должны быть установлены в "fill_parent".

Это вызвало ошибку, которая привела к сбою генерации файла R.java. Итак, если у вас есть эта проблема или аналогичная, проверьте все ваши файлы xml и убедитесь, что ни у кого из них нет ошибок.

Ответ 11

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

** * ПРОВЕРЬТЕ СМОТРЕТЬ КОНСОЛЬ СМОТРЕТЬ **

У меня (с помощью finder) была сделана резервная копия главного значка (даже не используется) поэтому одна из папок res (hdpi) имела

icon.png копия icon.png

Консоль указала, что "copy of icon.png" не является допустимым именем файла. Никаких ошибок не было отмечено нигде - нет красного X в папках res....

но заменяя пробелы на "_", и все возвращается к норме....

Ответ 12

Согласно моему опыту, я могу суммировать:

1. Проблема в основном относится к проблемам синтаксиса, которые могут быть   произошел в файлах xml.

2.Вы можете случайно скопировать файл AndroidManifest.xml во вложенные папки.

1. Один файл является расширением undefined.

После проверки всех этих объектов Перейти к проекту- > Очистить или просто удалить папки /bin и/gen.

Ответ 13

У меня также возникли проблемы с отсутствием R.java, а также затмение жалоб, что в моем коде есть ошибки (отображающие красный значок X в файлах классов), когда ошибок не было.

Единственный метод, который я нашел для этого, - очистить проект, выбрав Project > Clean

Это, похоже, решит проблему для меня, запустив Eclipse 3.5.2

Ответ 14

Я сталкивался с этой проблемой много раз. Коренной проблемой является

  • Целевая версия sdk не выбрана в настройках проекта

или

  • Файл default.properties(рядом с manifest.xml) отсутствует или минимальный уровень sdk не установлен.

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

Проверьте наличие ошибок на вкладке "Проблемы" или "Консоль".

Наконец: У вас /eclipse есть права на запись в папку проекта? (также менее вероятным является дисковое пространство)

Ответ 15

Да, у меня та же проблема. Я исправил ее выбор проекта с панели инструментов очищает проект  также reset автоматическая настройка сборки несколько раз нужно было изменить имя формата соответствия файла xml [a-z] [0-9] прописные буквы должны быть изменены

Ответ 16

Похоже, что когда вы переходите к последнему, SDK (2.2), здание больше не генерирует файл R.java. Или, по крайней мере, не так, как мы привыкли. Чтобы решить эту проблему, удалите пакет под папкой gen и очистите его, не создавая. Это решает проблему для меня.

Ответ 17

У меня эта проблема из-за некоторой ошибки внутри Android-плагина. Когда я попытался открыть какой-либо макет xml, у меня возникла ошибка:

The project target (Android 2.2) was not properly loaded.

Fortunatelly в моем случае перезапуск Eclipse и очистка проекта помогли.

Ответ 18

Это также может быть проблема с некорректным файлом макета xml. Если ваши xml файлы недействительны (содержат ошибки), R файл не будет повторно генерироваться после очистки. Если вы исправите это, файл R будет сгенерирован автоматически снова.

Ответ 19

Просто Перезагрузите, Eclipse решит эту проблему, так как рабочая область будет обновлена! перейдите к

Файл → Перезагрузка

Это самый простой способ избежать разочарования, перейдя в Build, свойства, blah blah.....

Ответ 20

Вот еще один: я как раз собирался плакать, но смог вернуть моего любимого R.java назад:

Я ничего не обновлял в своей установке Android довольно долго. Мне нужна была функция и запустил диспетчер SDK. Помимо того, что мне нужно, я в основном проверял все, что хотел обновить. Впоследствии мой R.java исчез в Eclipse.

Чтобы сделать это коротко, в SDK Manager появилась новая запись "Android SDK Build-tools", которая, я думаю, не была в последний раз, когда я обновлялся. Это действительно очевидное имя. После того как я установил, что один Eclipse дал мне мой R.java назад.

Ответ 21

java.... чем отладка.. или Удалите строку "import R.java" из вашего кода. Это сделано Eclipse для решения проблемы. Перейдите в файл "note_edit.xml". Где бы вы ни находили "match_parent" в качестве значения атрибута, замените его "fill_parent" или "wrap_content". Сделайте чистую сборку. R.java будет сгенерирован автоматически