Что такое dex в Gradle
что такое dex в Gradle или в Android?
в Gradle, что означает dexoptions
?
иногда мой проект не компилируется из-за некоторых dexerrors. Мне нужно активировать ProGuard для компиляции моего Android-приложения.
1 ответов
в стандартном мире java:
при компиляции стандартного кода java: компилятор производит *.файл класса. Файл * class содержит стандартный байт-код java, который может быть выполнен на стандартном JVM.
в мире Android:
это другое. Вы используете язык java для написания кода, но компилятор не создает *.файлы классов, он производит *.файл Декса. А *.dex
файл содержит байт-код, который может быть выполнен на виртуальной машине Android (dalvik) и это не стандартная виртуальная машина Java.
чтобы быть ясным: файл dex в android эквивалентен классу в стандартной java.
так dexoptions
это ш объект где некоторые параметры для настройки этого java-code-to-android-байт-код преобразования. Параметры, настроенные с помощью этого объекта :
- targetAPILevel
- режим force-jumbo (при включении он позволяет увеличить количество строк в файлах dex)
включить jumboMode
:
android {
dexOptions {
jumboMode = true
}
}