target/product/runtime_libart.mk
30
31 # We currently don't suport DEX_PREOPT for art
32DEX_PREOPT_DEFAULT := nostripping
33
34include $(SRC_TARGET_DIR)/product/runtime_common.mk
Art模式编译时,不支持把classes.dex成apk, jar中删除
43 # $(1): boot jar module name
44define _dexpreopt-boot-jar
45$(eval _dbj_jar := $(DEXPREOPT_BOOT_JAR_DIR_FULL_PATH)/$(1).jar)
46$(eval _dbj_odex := $(DEXPREOPT_BOOT_JAR_DIR_FULL_PATH)/$(1).odex)
47$(eval _dbj_jar_no_dex := $(DEXPREOPT_BOOT_JAR_DIR_FULL_PATH)/$(1)_nodex.jar)
48$(eval _dbj_src_jar := $(call intermediates-dir-for,JAVA_LIBRARIES,$(1),,COMMON)/javalib.jar)
49$(eval $(_dbj_odex): PRIVATE_DBJ_JAR := $(_dbj_jar))
50$(_dbj_odex) : $(_dbj_src_jar) | $(ACP) $(DEXPREOPT) $(DEXOPT)
51 @echo "Dexpreopt Boot Jar: [email protected]"
52 $(hide) rm -f [email protected]
53 $(hide) mkdir -p $$(dir [email protected])
54 $(hide) $(ACP) -fp $$< $$(PRIVATE_DBJ_JAR)
55 $$(call dexpreopt-one-file,$$(PRIVATE_DBJ_JAR),[email protected])
56
57$(_dbj_jar_no_dex) : $(_dbj_src_jar) | $(ACP) $(AAPT)
58 $$(call copy-file-to-target)
59 ifneq($(DEX_PREOPT_DEFAULT),nostripping)
60 $$(calldexpreopt-remove-classes.dex,[email protected])
61 endif
因此,可以断定支持ART模式的机器,肯定有对应的classes.dex文件存在。