已上传至Bintray的Package无法通过Gradle解析依赖
解决Failed to resolve: com.frlgrd:animated-edit-text:0.3依赖问题
你已经把库上传到个人Bintray仓库,但测试项目拉取不到依赖,大概率是几个常见配置环节出了问题,我给你梳理下排查方向和解决办法:
1. 测试项目未配置个人Bintray仓库地址
你的测试项目根build.gradle里的allprojects.repositories只加了公共仓库(google、jcenter、mavenCentral),但个人Bintray仓库是私有/半公开的,必须手动添加仓库地址才能被访问到:
allprojects { repositories { google() jcenter() mavenCentral() // 替换成你自己的Bintray仓库URL,格式为https://dl.bintray.com/你的用户名/你的仓库名 maven { url 'https://dl.bintray.com/你的Bintray用户名/你的仓库名称' } } }
记得把URL里的用户名和仓库名替换成你在Bintray上实际创建的信息。
2. 确认Bintray上的包已完成发布
很多人上传包后会忽略关键一步:Bintray上刚上传的包默认是草稿状态,你需要登录Bintray找到你的包,点击右上角的Publish按钮确认发布,只有发布后的包才能被外部项目拉取。
3. 核对依赖坐标的准确性
确保测试项目里的依赖坐标com.frlgrd:animated-edit-text:0.3@aar和Bintray上的信息完全一致:
- 检查
groupId(com.frlgrd)、artifactId(animated-edit-text)、版本号(0.3)的拼写和大小写 - 另外,Gradle 3.0+版本已经可以自动识别AAR类型依赖,
@aar标记可以省略,你可以试试简化后的依赖写法:implementation 'com.frlgrd:animated-edit-text:0.3'
4. 清理Gradle缓存并重新同步
本地缓存异常也可能导致依赖解析失败,你可以:
- 点击Android Studio右上角的
Sync Project with Gradle Files按钮重新同步项目 - 或者通过
File -> Invalidate Caches... -> Invalidate and Restart清理缓存并重启IDE
附你提供的测试项目根build.gradle原配置:
buildscript { repositories { google() jcenter() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:3.0.1' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3' classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0' } } allprojects { repositories { google() jcenter() mavenCentral() } } task clean(type: Delete) { delete rootProject.buildDir }
内容的提问来源于stack exchange,提问作者François Legrand
相关产品推荐
相关产品推荐

