Files
build/core/tasks
Colin Cross 585967c08a Delete staging directory after creating module package zip
The staging directory isn't used after the module packaging zip is
built.  Delete the staging directory to reduce disk usage without
affecting incremental build performance.

Bug: 302573555
Change-Id: I377c60714f78760d0b6c2588935c12e10a9ed224
Test: treehugger
2023-09-30 00:37:38 +00:00
..
2021-02-11 10:34:01 +00:00
2020-07-15 13:02:15 +01:00
2022-04-28 08:03:55 +00:00
2022-04-07 22:03:29 -07:00
2023-02-24 19:34:25 +00:00
2018-07-30 16:42:46 -07:00
2022-04-07 22:03:29 -07:00
2020-07-16 12:34:29 -07:00
2020-07-20 05:39:29 +00:00
2023-01-11 00:55:50 +00:00

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.