1、使用如下代码将三方jar包编译进系统
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := arcsoft_face:arcsoft_face.jar
include $(BUILD_MULTI_PREBUILT)
2、在frameworks\base\services\Android.mk中引入jar包
LOCAL_STATIC_JAVA_LIBRARIES += arcsoft_face
3、编译时出现如下的错误
ninja: error: 'out/target/common/obj/JAVA_LIBRARIES/arcsoft_face_intermediates/classes.jack', needed by 'out/target/common/obj/JAVA_LIBRARIES/services_intermediates/with-local/classes.dex', missing and no known rule to make it
4、查看相应的out目录发现确实是没有classes.jack文件
out\target\common\obj\JAVA_LIBRARIES\arcsoft_face_intermediates
5、归根结底的问题就是编译三方jar的时候如何生成classes.jack文件或者如何修改frameworks中的android.mk使编译时候引用的是jar文件而不是jack.