Gradle 将模块导入 Android 项目后构建失败

Gradle Build fails after importing modules into Android project

我正在尝试从 here 导入 Agora.IO 模块来实现屏幕共享功能。在提供的 link 克隆存储库并将其添加为我的项目的 Module 后,我能够正确获取所有 imports。我需要的唯一导入是 import io.agora.api.*,但构建失败并显示以下消息。

Execution failed for task ':lib-switch-external-video:compileDebugAidl'.
> Could not resolve all files for configuration ':lib-switch-external-video:debugCompileClasspath'.
> Could not find com.github.agorabuilder:native-full-sdk:3.4.2.
 Required by:
     project :lib-switch-external-video > project :lib-component

Possible solution:
- Declare repository providing the artifact, see the documentation at 
https://docs.gradle.org/current/userguide/declaring_repositories.html

This is how my project strucure looks after importing the modules:

虽然我对 multi-module 应用程序还没有多少经验,但我已经将它们添加到我的 settings.gradle 文件中:

settings.gradle

rootProject.name = "dummy"
include ':app'
include ':lib-push-externalvideo'
include ':lib-screensharing'
include ':lib-player-helper'
include ':lib-stream-encrypt'
include ':lib-component'
include ':lib-raw-data'
include ':lib-switch-external-video'

在我发现的 lib-component 模块的默认 build.gradle

api 'com.github.agorabuilder:native-full-sdk:3.4.2'
api 'io.agora:agoraplayer:1.2.4'

在每个模块的 build.gradle 中,已经添加了其中一个:

implementation project(path: ':lib-component')
or
api project(path: ':lib-component')

我选择导入这些模块的唯一原因是我无法找到支持这些导入的 gradle 依赖项。如果有这样的依赖,请告诉我!

邮件中确实提到了这个问题。 Gradle 无法解析模块中添加的任何存储库中的 com.github.agorabuilder:native-full-sdk:3.4.2 依赖项。

你在那里定义了 jitpack repo 吗?

repositories {
    maven { url 'https://www.jitpack.io' }
    
    // Other repositories you need
}

此外,与您的问题不同,您的 settings.gradle 文件似乎有点不同。我假设您已将所有源代码复制到您的项目中。

相反,在这种情况下,我会选择 link 它们而不是复制源代码。为此,您可以使用

include ':lib-component'
project(':lib-component').projectDir = new File('/path/to/cloned/repo/lib-component/')

当你在调试你看起来是的库时,更喜欢这个。这样,您就可以在此构建中添加确切的模块,并且在此处进行的任何更改都会实际发生在该项目中。允许您简单地提交或更改该存储库中的分支。