platform_build/core/tasks
2024-04-11 17:45:18 +00:00
..
tools Dedupe input for target-native-copy-pairs 2024-03-26 03:34:41 +00:00
art-host-tests.mk
automotive-general-tests.mk
automotive-sdv-tests.mk Added automotive-sdv-tests 2024-04-08 11:16:46 +02:00
automotive-tests.mk
berberis_test.mk Move berberis tests to build/core/tasks 2024-04-02 02:43:48 +00:00
build_custom_images.mk
catbox.mk
csuite.mk
cts.mk Move most version variable out to relase configs. 2023-10-24 16:41:58 +00:00
cts_root.mk
device-tests.mk
dex_preopt_check.mk
find-shareduid-violation.mk
fontchain_lint.mk Move fontchain_lint to build/core/tasks 2024-01-19 06:59:22 +00:00
general-tests-shared-libs.mk Split out host shared libs target from general-tests 2024-02-20 14:06:02 -08:00
general-tests.mk Split out host shared libs target from general-tests 2024-02-20 14:06:02 -08:00
host-unit-tests.mk
host_init_verifier.mk
meta-lic.mk Convert device/sample/Android.mk to Android.bp 2024-04-01 06:08:24 +00:00
module-info.mk Fix is_unit_test in module-info 2024-04-05 04:40:57 +00:00
mts.mk
multitree.mk
oem_image.mk
offline-sdk-docs.mk Move frameworks/base/Android.mk to build/core 2024-03-07 11:25:57 +00:00
owners.mk
platform_availability_check.mk
README.dex_preopt_check.md
recovery_snapshot.mk
sdk-addon.mk
sts-lite.mk
sts.mk
test_mapping.mk
tradefed-tests-list.mk
vendor_module_check.mk
vendor_snapshot.mk
vts-core-tests.mk linux-kselftest: Remove special cased build rule for kselftest 2023-09-15 22:49:17 +00:00
with-license.mk
wvts.mk

dex_preopt_check

dex_preopt_check is a build-time check to make sure that all system server jars are dexpreopted. When the check fails, you will see the following error message:

FAILED:
build/make/core/tasks/dex_preopt_check.mk:13: warning:  Missing compilation artifacts. Dexpreopting is not working for some system server jars
Offending entries:

Possible causes are:

  1. There is an APEX/SDK mismatch. (E.g., the APEX is built from source while the SDK is built from prebuilt.)

  2. The systemserverclasspath_fragment is not added as systemserverclasspath_fragments of the corresponding apex module, or not added as exported_systemserverclasspath_fragments of the corresponding prebuilt_apex/apex_set module when building from prebuilt.

  3. The expected version of the system server java library is not preferred. (E.g., the java_import module has prefer: false when building from prebuilt.)

  4. Dexpreopting is disabled for the system server java library. This can be due to various reasons including but not limited to:

    • The java library has dex_preopt: { enabled: false } in the Android.bp file.

    • The java library is listed in DEXPREOPT_DISABLED_MODULES in a Makefile.

    • The java library is missing installable: true in the Android.bp file when building from source.

    • Sanitizer is enabled.

  5. PRODUCT_SYSTEM_SERVER_JARS, PRODUCT_APEX_SYSTEM_SERVER_JARS, PRODUCT_STANDALONE_SYSTEM_SERVER_JARS, or PRODUCT_APEX_STANDALONE_SYSTEM_SERVER_JARS has an extra entry that is not needed by the product.