Неправильное или ошибочное использование основного класса (java. * Или javax. *), Когда не создается базовая библиотека.

Когда я очищаю свой проект, я получаю следующую ошибку:

[2011-10-05 13:47:53 - The Basics] Dx 
trouble processing "java/nio/CharBuffer.class":

Ill-advised or mistaken usage of a core class (java.* or javax.*)
when not building a core library.

Это часто происходит из-за непреднамеренного включения файла базовой библиотеки в проект вашего приложения при использовании IDE (такой как Eclipse). Если вы уверены, что не намеренно определяете основной класс, то это наиболее вероятное объяснение того, что происходит.

Однако на самом деле вы можете пытаться определить класс в основном пространстве имен, источник которого вы, возможно, взяли, например, из проекта виртуальной машины, отличной от Android. Это наверняка не будет работать. Как минимум, это ставит под угрозу совместимость вашего приложения с будущими версиями платформы. Это также часто сомнительной законности.

Если вы действительно намереваетесь создать базовую библиотеку, которая подходит только для создания полного дистрибутива виртуальной машины, а не для компиляции приложения, то используйте опцию «--core-library» для подавления этого сообщения об ошибке.

Если вы продолжаете использовать «--core-library», но на самом деле создаете приложение, то имейте в виду, что ваше приложение в какой-то момент все равно не удастся построить или запустить. Пожалуйста, будьте готовы к недовольным клиентам, которые, например, обнаружат, что ваше приложение перестает функционировать после обновления операционной системы. Вы будете виноваты в этой проблеме.

Если вы законно используете какой-то код, который находится в основном пакете, то самая простая и безопасная альтернатива - переупаковка этого кода. То есть переместите рассматриваемые классы в собственное пространство имен пакетов. Это означает, что они никогда не будут конфликтовать с основными классами системы. JarJar - это инструмент, который может помочь вам в этом деле. Если вы обнаружите, что не можете этого сделать, то это свидетельствует о том, что путь, по которому вы идете, в конечном итоге приведет к боли, страданию, печали и скорби.

[2011-10-05 13:47:53 - The Basics] Dx 1 error; aborting
[2011-10-05 13:47:53 - The Basics] Conversion to Dalvik format failed with error 1

Ответы на вопрос(4)

Ваш ответ на вопрос