Android: тип java.lang.Enum не может быть разрешен

Я загрузил проект браузера Android (из git) и импортировал его в Eclipse. Однако я не могу его построить из-за следующей ошибки:

Тип java.lang.Enum не может быть разрешен. На него косвенно ссылаются необходимые файлы .class.

Теперь... это среда разработки, которая очень хорошо работает для других проектов:

  1. Windows 7 Максимальная 64-разрядная версия.
  2. 64-разрядная версия JDK (установлен jdk-6u23-windows-x64.exe.)
  3. Eclipse Classic 3.6, 64-разрядная версия (eclipse-SDK-3.6.1-win32-x86_64.zip)
  4. Стартовый пакет SDK для Android 2.3

Так что я не уверен, где проблема может лежать.

Как мне это решить?


person Android Eve    schedule 13.03.2011    source источник


Ответы (3)


В лучшем случае ваш путь сборки испорчен. Щелкните правой кнопкой мыши имя проекта и выберите «Путь сборки» > «Настроить путь сборки» в контекстном меню. Это вызывает часть пути сборки окна свойств проекта на вкладке «Заказ и экспорт». Если Android JAR не отмечен, проверьте его, а затем закройте окно свойств.

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

person CommonsWare    schedule 13.03.2011
comment
@CommonsWare Я сначала попробовал В лучшем случае. Был не отмечен флажок, но он говорил что-то о том, что библиотека не найдена. Я проверил это, закрыл окно свойств, и когда я снова открыл окно свойств, этот флажок изменился на Android 2.2. Проверено, но проблема, кажется, усугубилась? Вместо одного .java с ошибкой, о которой сообщалось выше, теперь у меня есть множество файлов, сообщающих о том, что импорт android.net.WebAddress не может быть разрешен. Значит ли это, что я в худшем случае? Если да, то как лучше всего это решить? (Надеюсь, это не будет загрузка всего проекта Android) - person Android Eve; 14.03.2011
comment
@Android Eve: Приложение браузера не предназначено для отдельной сборки, а только как часть полной сборки прошивки. Класс WebAddress является частью библиотеки классов Android, но не входит в SDK. - person CommonsWare; 14.03.2011
comment
@CommonsWare Вау. Это оказывается гораздо более серьезным испытанием, чем я ожидал. Любые предложения о том, как создать собственную версию браузера? Я ищу короткий путь, мне не очень интересно конкурировать с Google. :) - person Android Eve; 14.03.2011
comment
И кажется, что проблема древняя: (1) anddev.org/other-coding-problems-f5/ (2) groups.google.com/group/android-developers/browse_frm/thread/ - person Android Eve; 14.03.2011
comment
Для создания исходных файлов Android вам потребуется Linux или Mac OS. Сборка под Windows в настоящее время не поддерживается. source.android.com/source/download.html - person Android Eve; 14.03.2011
comment
@Android Eve: Любые предложения о том, как создать собственную версию браузера? - найти какой-нибудь существующий браузер Android с открытым исходным кодом, который не входит в AOSP. Или найдите другое решение для любой проблемы, которую вы пытаетесь решить. - person CommonsWare; 14.03.2011
comment
@CommonsWare, у меня очень маленький запрос об AOSP, я пытаюсь использовать код лупы из AOSP, и я знаю, что для этого мне нужно получить так много ресурсов от AOSP. В этом случае мне нужно иметь ROOTED-устройство, чтобы все классы Java можно было правильно импортировать? - person Scorpion; 24.04.2014

Это не проблема андроида, это проблема затмения.

Проверять:

person Macarse    schedule 13.03.2011
comment
Мне больше нравится ваш ответ, но, к сожалению, похоже, что @CommonsWare верен: в моем окружении Eclipse уже используется последняя версия JRE 1.6. Думаю, мне придется полностью скачать и собрать Android. (если нет трюка для разрешения только этих Enums) - person Android Eve; 14.03.2011

Я обновил JDK 1.6.0_24 до 1.6.0_32, и проблема исчезла :)

person user1428735    schedule 31.05.2012