在Android.mk中添加外部jar引用

时间:2010-04-08 07:46:25

标签: android

我想在内置的Android应用程序中添加外部第三方jar文件。

我在Android.mk中添加了LOCAL_CLASSPATH变量,因此编译正常。但是在运行时,它无法找到JAR中的类定义。

我需要设置哪个变量来在.dex / .apk中添加第三方JAR?

TIA。

5 个答案:

答案 0 :(得分:16)

一个例子不仅仅是说话。

...

LOCAL_STATIC_JAVA_LIBRARIES := libmylibs

LOCAL_PACKAGE_NAME := myapp

...

include $(BUILD_PACKAGE)

##################################################
include $(CLEAR_VARS)

LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libmylibs:mylib.jar

include $(BUILD_MULTI_PREBUILT)

注意:将“mylib.jar”放在项目根目录。

答案 1 :(得分:13)

以下是我用来解决问题的方法:

LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := path_to_jar_file.jar
include $(BUILD_MULTI_PREBUILT)

这应该在Android.mk

后的include $(BUILD_PACKAGE)中添加

您还需要在LOCAL_STATIC_JAVA_LIBRARIES中指定库名称以进行编译。

答案 2 :(得分:0)

添加LOCAL_STATIC_JAVA_LIBRARIES& LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES旗帜。

并将LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES放在包含$(BUILD_PACKAGE)&包括$(BUILD_MULTI_PREBUILT)

没关系。感谢网址a2ronus提供的。

答案 3 :(得分:0)

LOCAL_STATIC_JAVA_LIBRARIES := \
other libs \
your_jar

include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := your_jar:jar_path/jar_file.jar
include $(BUILD_MULTI_PREBUILT)

答案 4 :(得分:-2)

在Eclipse中选择修改构建路径并选择添加外部jar,然后选择要包含的jar。