1

I am trying to add external JAR files (e.g., gson or eventbus) to my AOSP build. I tried it in two different ways:

  • Adding them to prebuilts/misc/common/mylibs/ and creating a Android.mk file for the dir. Then, I merely include the symbolic name of the lib in my app's Android.mk file.

  • Adding them in a subdir libs in my custom app source code and add it via the app's Android.mk file directly.

However, both approaches are yielding me similar errors, the following for the second method:

ninja: error: 'packages/apps/Car/MyApp/packages/apps/Car/Myapp/libs/gson-2.6.2.jar', needed by 'out/target/common/obj/JAVA_LIBRARIES/gson_intermediate/classes.jack', missing and no known rule to make it.

I noticed the weird repeating path in the error message. Does anybody have an idea what I am doing wrong?

Here is my Android.mk file for the second way:

LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)

LOCAL_SRC_FILES := $(call all-java-files-under, src)

LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res

LOCAL_PACKAGE_NAME := MyApp

LOCAL_CERTIFICATE := platform

LOCAL_MODULE_TAGS := optional

LOCAL_PRIVILEGED_MODULE := true

LOCAL_STATIC_JAVA_LIBRARIES += jsr305 gson

LOCAL_STATIC_ANDROID_LIBRARIES := android-support-v4

LOCAL_USE_AAPT2 := true

include packages/apps/Car/libs/car-stream-ui-lib/car-stream-ui-lib.mk
include packages/services/Car/car-support-lib/car-support.mk

include $(BUILD_PACKAGE)

include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := gson:$(LOCAL_PATH)/libs/gson-2.6.2.jar
include $(BUILD_MULTI_PREBUILT)
phoebus
  • 1,280
  • 1
  • 16
  • 36

1 Answers1

1

Removing $(LOCAL_PATH) from the path fixed it.

phoebus
  • 1,280
  • 1
  • 16
  • 36