Преобразование в формат Dalvik не удалось с ошибкой 2 ADT 16.0.1
Недавно мы обновили плагин eclipse adt до 16 версии, и теперь не можем запустить наше приложение, оно нормально компилируется, но при запуске выдает следующую ошибку:
Неполадки при записи: нет расширенного кода операции для 016be7fe @0032: sget-object v4:Lorg/apache/http/HttpVersion;, org.apache.http.HttpVersion.HTTP_1_1:Lorg/apache/http/HttpVersion; Преобразование в формат Dalvik не удалось с ошибкой 2
И если мы прокомментируем некоторые идентификаторы в наших файлах макета XML, он снова запустится. Наш проект огромен, и к нему добавлено много библиотечных проектов. Приложение работает нормально с предыдущим плагином adt, который не экспортировал проекты библиотеки как файлы.jar. Я предполагаю, что причина в изменениях в последних версиях Android состоит в том, что идентификаторы теперь не являются окончательными полями.
У меня вопрос, как мы можем это исправить, и есть ли ограничение на количество идентификаторов в файлах Android Android? Или, может быть, это ошибка Android?
3 ответа
На самом деле это потому, что имя моего проекта в lib не совпадает с моим основным проектом.
Я вижу, что это старая проблема, но я нашел другое решение:
Удалить -XX:+AggresiveOpts
от eclipse.ini
,
На всякий случай, если кто-то пришел сюда из поиска Google для "Преобразование в формат Dalvik не удалось с ошибкой 2". У меня была та же проблема, и она, похоже, была связана с опциями запуска JVM или Eclipse.
Обновление до Java 7 решило эту проблему.