Отсутствует AndroidManifest.xml при импорте старого проекта Android в Eclipse
У меня есть проект Android, разработанный на Eclipse (GNU/Linux), который я последний раз касался полгода назад. Я пытаюсь импортировать проект в Eclipse 3.6 на Windows (с установленным ADT), установленным с помощью File → Import Project в Eclipse. Когда проект импортируется, я вижу следующую ошибку дважды на консоли:
[2010-12-10 02:17:12 - com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] Невозможно прочитать C:\Program Files\Android\Android-СДК-окна\AndroidManifest.xml: java.io.FileNotFoundException: C:\Program Files\Android\Android-СДК-окна\AndroidManifest.xml(Система не может найти файл указано)
Почему Eclipse ищет AndroidManifest.xml
на пути Android SDK? Фактически файл находится в каталоге проекта. Как исправить эту проблему и получить проект для компиляции?
Ответы
Ответ 1
То, как вы импортируете проект Android в Eclipse, неверно. Правильный способ - File -> New Android Project
. На вкладке "Содержание" в "Новый проект Android" выберите "Создать проект из существующего источника" и выберите "Создать цель". Это должно решить вашу проблему.
Ответ 2
Простым решением является либо reimport файл AndroidManifest.xml, либо внести изменения в файл и сохранить его. Это сработало для меня.
Ответ 3
Если вы видите ошибку в файле AndroidManifest.xml или некоторые проблемы связанных с zip файлом Android, щелкните правой кнопкой мыши по проекту и выберите Инструменты Android > Исправить свойства проекта. (Проект смотрит в неправильное расположение файла библиотеки, это исправит его для вас.)
from: http://developer.android.com/resources/tutorials/notepad/notepad-ex1.html
Ответ 4
Похоже, эта ошибка возникает, потому что Eclipse считает, что местоположение по умолчанию для новых Android-проектов - это путь Android SDK. Даже если местоположение проекта будет изменено, ошибка не будет устранена, поэтому трюк заключается в изменении местоположения проекта до того, как Eclipse узнает о состоянии, вызвавшем ошибку.
Чтобы обойти эту причуду, я импортировал старый проект со следующими шагами:
- Файл → Новый → Проект Android
- Отмените проверку "Использовать местоположение по умолчанию" и перейдите в корневой каталог проекта.
- Нажмите "Создать проект из существующего источника"
Важно сделать шаг (2) до (3), в противном случае ошибка сохранится и предотвратит запуск проекта.
Ответ 5
Вместо использования файла --- > Новый проект Android → "Создать проект из существующих источников", что приведет к ошибке, которую вы видите, выберите "Создать проект из существующего образца" и выберите его из раскрывающегося списка, Это сработает.
У опытных разработчиков JAVA, как правило, есть первый вариант, который обычно существует и работает для классических проектов Eclipse. Но это не ваш типичный проект, и я готов поспорить, что разработчики Google помещают этот специальный случай в мастер, чтобы учитывать различия.
Ответ 6
У меня была та же проблема, все вышеперечисленное не сработало. Я очистил проект, и он сработал.
Ответ 7
У меня была та же проблема. Я пытался скомпилировать образец страницы просмотра JakeWharton, поэтому я проверил GIT в каталоге в другой папке, а затем в рабочей области, которая вызвала проблему.
Eclipse поддерживал 2 папки:
1. Новая папка рабочего пространства была сделана в каталоге рабочей области, который eclipse проверяет на наличие библиотек и других исходных текстов, включая файл AndroidManifest.xml
2. Существующая папка, которая не находилась под рабочей средой Root
Чтобы устранить проблему после импорта, мне пришлось вручную перемещать файлы в новой папке рабочего пространства, созданной eclipse.
Ответ 8
Я столкнулся с этой проблемой при использовании Facebook SDK, теперь я решаю это, делая это:
- Закройте проект;
- Скопировать файл "AndroidManifest.xml" в корневой путь проекта;
- Откройте проект и обновите его, он Done!
Ответ 9
это сработало для меня, кстати:
Я изменил название проекта на точное имя проекта, который я импортирую.
Ответ 10
Eclipse кажется несколько хрупким в своих соглашениях об именах. Одной из причин этой ошибки является различие между именем проекта и именем папки в рабочей области. Я импортировал zip файл для проекта с именем "HelloDialogs" в папку рабочей области с именем "HelloDialog". Это вызвало ошибку "AndroidManifest.xml file". Как только я правильно переименовал папку, все сработало нормально.
Ответ 11
Из-за нескольких разных ответов здесь, я бы добавил еще один, который работал у меня, поскольку у меня была точно такая же проблема, когда я впервые работал с инструментами Android android dev.
Итак, я нашел (как упоминал Гинтаутас в комментариях к принятому ответу), что мне пришлось создать новый проект, используя phonegap "create" script, а затем при импорте проекта в eclipse. единственный способ заставить это работать успешно, - если проект был первоначально создан в какой-то временной папке где-то, кроме места, в котором я действительно хочу работать с ним.
Итак, я создал проект в таких окнах в окне cmd...
c:\phonegap\phonegap-2.6.0\lib\android\bin>create.bat c:\temp\android_boilerplates\test app.test test
Затем я импортировал проект в eclipse, как это...
Файл > Создать > Проект
В новом мастере проекта выберите "Проект Android из существующего кода"
Нажмите "Далее"
![enter image description here]()
Теперь перейдите к временному местоположению вашего проекта и установите его в корневой каталог, проверьте нужный проект и отметьте "Копировать проекты в рабочее пространство" в качестве примера ниже...
Нажмите "Готово"
![enter image description here]()
И что он, Eclipse должен скопировать все ваши файлы проекта в ваше рабочее пространство и не должно быть никаких ошибок в вашем проекте (скрещенные пальцы).
Ваш проект должен выглядеть примерно так...
![enter image description here]()
Надеюсь, что это помогает, мне потребовался возраст, чтобы понять, почему Eclipse не понравилось создавать новый проект из существующего кода, когда новый проект настраивался в том же месте, что и существующий код. Это не проблема для других языков, которые я использовал, поэтому это было немного странно, но понятно, поскольку Eclipse (я предполагаю), похоже, хочет перезаписать определенные файлы.
Ответ 12
Eclipse случайно решил создать другую папку вместо той, которую я указал, но в ней нет никаких ресурсов, данных или макета.
у него есть некоторые конфликты, я думаю..
во всяком случае, подход noob к этому был, копируя исходный файл в другое место (я помещаю его на рабочий стол).
теперь создайте новый проект - создайте существующий проект, выберите его с рабочего стола, n VOILA.. все это отлично..: D
Ответ 13
Я немного опоздал в эту игру, но я вызвал эту же проблему, создав исходное приложение в то место, где я собирался работать над ним. То есть я помещал его прямо в мое текущее рабочее пространство. Затем я сделал File, Import, существующий код для Android в рабочее пространство. Процесс импорта заглушил мой файл android.xml.
Я пробовал решения и не испытывал радости. Затем я сгенерировал исходное приложение в каталог temp и импортировал его. Это сработало для меня.
Ответ 14
Единственный способ импортирования проекта в рабочее пространство eclipse - создать пустой проект, а затем перетащить все папки и файлы в этот проект. Почему это так далеко от меня.
Ответ Раунака неверен.
Ответ 15
Я нашел файл .classpath в корневом каталоге моего Android-проекта. Я открыл его и обновил пути к файлу в нем, и, похоже, это устранило проблему для меня.
Ответ 16
У меня возникла проблема, когда я попытался обновить старый проект с последним кодом из SVN. У меня был файл Manifest.xml, экспортированный в мою локальную файловую систему в качестве резервной копии и удаленный. Затем я вернул свой полный проект к самой последней версии из SVN, а затем сработал:)
Ответ 17
Это то, что я должен был сделать, чтобы заставить это работать. К счастью, у меня были резервные копии более раннего "проекта".
1) Импортируйте проект как обычно.
2) Если появляются ошибки с пустым xml и т.д., Закройте проект.
3) Перейдите в исходный проект, если у вас есть резервная копия.
4) Скопируйте все корневые файлы и каталоги проектов и вставьте их туда, где Eclipse ожидает корневых каталогов и файлов проектов.
5) Откройте проект и обновите его. При необходимости сделайте "Очистить", и все готово!
Всегда создавайте резервные копии, потому что Eclipse f - kups! Я узнал об этом, когда внезапно мой Android-проект отказался работать из-за пустого файла манифеста.
Ответ 18
Иногда, если вы автоматически исправляете импорт в MainActivity
, IDE импортирует класс android.R вместо того, который будет создан для проекта. Удалите импорт и перекомпилируйте.
Ответ 19
при импорте проекта из другой рабочей области добавьте существующий проект в рабочее пространство. и отметьте копии проектов в рабочей области. Затем проверьте уровень api и поддерживайте библиотеку из файлов project.properties. Затем восстановите проект и очистите его. Это работает для меня.
Ответ 20
2017 Решение: гораздо проще и протестировать решение - удалить папку приложения из проекта elipse, а затем импортировать ее снова, и проблема будет исправлена немедленно!