Flutter模块.aar接入Android应用报错:缺少dependency groupId
解决导入Flutter生成的.aar时"Missing required attribute: dependency groupId"错误
原因分析及修复方案
1. 验证本地Maven仓库路径与文件完整性
确保配置的Maven仓库路径是绝对路径,且目录下存在完整的层级结构与文件:
- 检查路径
/home/reddy/AndroidStudioProjects/sdkmodule/build/host/outputs/repo下,是否有com/npst/sdkmodule/flutter/1.0的子目录,且该目录内包含flutter-1.0-debug.aar、flutter-1.0-debug.pom等对应构建类型的文件。 - 若使用相对路径导致解析错误,直接替换为绝对路径。
2. 重新生成Flutter模块的AAR与Maven仓库
部分情况下生成的pom文件会缺失groupId信息,重新执行生成命令:
flutter build aar
执行完成后检查build/host/outputs/repo下的pom文件,确认其中包含<groupId>com.npst.sdkmodule</groupId>配置。
3. 核对依赖引用格式
确保依赖的groupId、artifactId、version、classifier与pom文件完全匹配:
dependencies { debugImplementation 'com.npst.sdkmodule:flutter:1.0:debug' profileImplementation 'com.npst.sdkmodule:flutter:1.0:profile' releaseImplementation 'com.npst.sdkmodule:flutter:1.0:release' }
若pom文件中的artifactId不是flutter,需同步修改依赖引用。
4. 直接导入AAR文件(备选方案)
若Maven仓库方式仍有问题,可直接将对应构建类型的aar文件复制到主应用的libs目录,然后修改build.gradle:
repositories { flatDir { dirs 'libs' } } dependencies { debugImplementation(name: 'flutter-1.0-debug', ext: 'aar') profileImplementation(name: 'flutter-1.0-profile', ext: 'aar') releaseImplementation(name: 'flutter-1.0-release', ext: 'aar') }
5. 清理缓存并重新构建
执行以下操作清除旧缓存,避免配置冲突:
- 打开Android Studio,选择
File -> Invalidate Caches... -> Invalidate and Restart - 执行命令:
./gradlew clean ./gradlew build --refresh-dependencies
内容的提问来源于stack exchange,提问作者Mahin Munir
相关产品推荐
相关产品推荐

