Add a runtime check to ensure that system server jars are prefetched.
We prefetch standalone system server jars in ZygoteInit based on the STANDALONE_SYSTEMSERVER_JARS environment variable, so that they can take the advantage of AOT compilation. This CL adds a check to disallow jars that are not prefetched, which reminds developers to make appropriate changes so that their jars will be in the environment variable. Bug: 203198541 Test: 1. Build a system image. 2. The device boots. Test: 1. Remove an entry from PRODUCT_APEX_STANDALONE_SYSTEM_SERVER_JARS 2. Build a system image. 3. The device does not boot and encounters the following error: java.lang.RuntimeException: Creating a ClassLoader from /apex/com.android.wifi/javalib/service-wifi.jar is not allowed. Please make sure that the jar is listed in `PRODUCT_APEX_STANDALONE_SYSTEM_SERVER_JARS` in the Makefile and added as a `standalone_contents` of a `systemserverclasspath_fragment` in `Android.bp`. Change-Id: I275d75ac37194a4d8fd491529b7cdb697dc04e37
Loading
Please register or sign in to comment