Mac M2构建Android项目报错:无法找到com.commit451:PhotoView:1.2.4
解决Mac M2上Android项目无法解析com.commit451:PhotoView:1.2.4的问题
核心原因
com.commit451:PhotoView 1.2.4仅托管于已停止服务的JCenter仓库,当前JCenter公共访问已不稳定甚至完全失效,这是更新系统/Android Studio后依赖解析失败的主要原因。
可行解决思路
1. 升级PhotoView到Maven Central托管的版本
PhotoView从2.0.0版本开始迁移至Maven Central,直接替换依赖版本即可解决仓库访问问题:
- 在
app/build.gradle中修改依赖:// 替换旧版本为Maven Central上可用的稳定版 implementation 'com.commit451:PhotoView:3.0.0' - 确保根目录的
settings.gradle(Gradle 7.x+)或build.gradle中已配置Maven Central仓库:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() // 必须添加该仓库 // 移除或限制jcenter(),避免无效扫描 } }
2. 彻底清理Gradle缓存
执行以下命令清除旧缓存,避免残留的仓库配置影响解析:
./gradlew clean build --refresh-dependencies rm -rf ~/.gradle/caches
重启Android Studio后重新同步项目。
3. 限制JCenter仓库访问范围(若必须保留)
如果项目中仍有其他依赖需从JCenter获取,可通过内容过滤仅允许特定依赖访问JCenter,减少无效扫描:
repositories { jcenter() { content { // 仅添加必须从JCenter获取的依赖组 includeGroup 'com.example.legacy-dependency' } } }
4. 检查网络与代理设置
- 关闭Mac系统代理或Android Studio的HTTP代理,确保Gradle能正常访问Maven Central和Google仓库。
- 打开
gradle.properties文件,注释或删除不必要的代理配置:# 注释以下代理配置(如果存在) # systemProp.http.proxyHost=xxx # systemProp.http.proxyPort=xxx
5. 手动添加本地依赖(备选方案)
若无法升级版本,可手动下载PhotoView 1.2.4的pom和aar文件,放置到本地Maven仓库目录~/.m2/repository/com/commit451/PhotoView/1.2.4/,再重新同步项目。
内容的提问来源于stack exchange,提问作者Bruno Batista
相关产品推荐
相关产品推荐

