Что такое компиляция DEX?



Я новичок в android studio и хочу знать разницу между DEX compilation и DX compilation.Недавно я прочитал о компиляторе DX в Android studio 3.1. Итак, может ли кто-нибудь здесь объяснить мне, в чем разница между ними?

519   2  

2 ответов:

Android studio, как правило, заботится обо всем, как создаются ваши приложения для Android и как они запускаются.

• КОМПИЛЯЦИЯ JAVA

[ ИСХОДНЫЕ ФАЙЛЫ JAVA ] > { КОМПИЛЯТОР JAVA} > [ФАЙЛЫ КЛАССОВ JAVA]

Ваш код написан на языке Java. Но разве что Java-код компилируется и запускается так же, как и для других обычных java-приложений, хотя процесс компиляции для Android-приложений сильно отличается от других Java-приложений. Но начинается все так же: ваша Java файлы исходного кода компилируются в .файлы классов, использующие компилятор java.

Файл класса здесь содержит стандартный байт-код Oracle JVM.

• БАЙТ-КОД ДАЛЬВИКА

[ ФАЙЛ КЛАССА JAVA ] > [ ФАЙЛ КЛАССА DEX]

Начиная с java .файл класса содержит стандартный байт-код JVM. Но устройства Android не используют этот формат байт-кода. Вместо этого Android имеет свой собственный особый формат байт-кода, называемый Dalvik. Байт-коды виртуальной машины Dalvik, как Оракул в JVM байт-код, машинный код инструкции для теоретического процессора.

Процесс компиляции должен преобразовать .файлы классов, и любые .jar библиотеки в один класс.файл dex, содержащий байт-коды Dalvik. Команда dx сшивает все .класс и .jar-файлы объединяются в один класс.файл dex, записанный в формате байт-кода Dalvik.

Теперь это преобразование .класс и .jar файлы в .файлы dex называются компиляцией Dex.

DeX компиляция-это процесс преобразования .байт-код класса В.dex байт-код для Android Runtime (или Dalvik, для более старых версий Android).

DX - компилятор DEX.

То, о чем вы читали, вероятно, новый компилятор D8, который Google представила с Android Studio 3.0. В Android Studio 3.1 он заменит DX по умолчанию.

Comments

    Ничего не найдено.