Zak*_*rdi 6 android gradle android-gradle-plugin
我有一个库模块,我想将其作为AAR依赖包含到示例应用程序中:
:my-library
:sample-app
Run Code Online (Sandbox Code Playgroud)
所以sample/build.gradle,我做了以下事情:
repositories {
flatDir {
dirs "../my-library/build/outputs/aar"
}
}
// I have different flavors that specify whether to use the source or binary (aar) dependency
flavorDimensions "SOURCE_OR_BINARY"
productFlavors {
source { }
binary { }
}
dependencies {
sourceImplementation project(':my-library')
binaryImplementation(name: 'my-library-release', ext: 'aar') // <-- this line fails with error
}
tasks.whenTaskAdded { task ->
def taskName = task.name.toLowerCase()
if (taskName.toLowerCase().contains("binary")) {
// Prepare libs as binaries
task.dependsOn ('my-library:assembleRelease')
}
}
Run Code Online (Sandbox Code Playgroud)
这./gradlew在命令行上运行正常,但Android Studio Failed to resolve: :my-library-release:在gradle同步期间报告.如果我./gradlew assemble在命令行上执行操作,然后同步Android Studio,则AS Gradle同步成功.
这个问题与时间有关binaryImplementation(name: 'my-library-release', ext: 'aar').执行Gradle Sync时,aar尚未存在,因为尚未构建.
有没有更好的方法来避免Failed to resolveAndroid Studio Gradle同步错误?
答案可以在这里找到 - 使用该 AAR 公开配置,并在下游使用该配置
https://docs.gradle.org/current/userguide/cross_project_publications.html
| 归档时间: |
|
| 查看次数: |
825 次 |
| 最近记录: |