首页 > 解决方案 > 相当于 Android.mk 中的 'compileOnly'

问题描述

我有一个预构建的 java 库作为 Android 库项目(AAR)的编译时依赖项。因此,在 Android Studio 中构建它时,使用了“compileOnly”,以便在与 APK 一起部署时在运行时链接它。

但是,我还应该为库项目编写一个等效的 Android.mk。我找不到在 Android.mk 中包含预构建的 java 库的任何参考。有人可以在这方面帮助我吗?

我尝试使用 LOCAL_PREBUILT_JAVA_LIBRARIES 属性,但系统抛出错误:错误:不再使用 LOCAL_PREBUILT_JAVA_LIBRARIES LOCAL_PATH=xxx。

这种依赖链接可能看起来很奇怪。让我也对此有所了解。基本上,我正在构建一个应用程序,其中一小部分由第三方开发。第三方的 setter 接口 API 由我以 .jar 文件的形式提供,以便它们使用与编译时依赖项相同的内容并从中构建 AAR。

现在第三方项目将包含在我的项目构建(AOSP)中。这带来了一个依赖,即他们的模块应该被编译以生成 AAR,而我的项目使用该 AAR 来生成 APK。

为了编译和构建 AAR,我需要链接我提供的预构建的 java 接口库(在第一步中提到)。

需要在 build.gradle 中使用等效的 'compileOnly'。

标签: androidmakefilebuild.gradleaarandroid.mk

解决方案


推荐阅读