Gradle 7.0+配置jitpack.io仓库后同步报错:无法访问FragmentActivity
Gradle 7.0+配置jitpack.io仓库后同步报错:无法访问FragmentActivity
看起来你遇到的是Gradle仓库配置错误引发的依赖拉取问题,我帮你梳理下问题点和解决办法:
问题根源
首先看你提供的settings.gradle配置,里面的jitpack.io仓库声明多了一对多余的反引号,这会导致Gradle无法正确解析仓库地址,进而影响依赖(比如appcompat)的正常下载,最终出现无法访问FragmentActivity的报错——毕竟FragmentActivity是包含在androidx.appcompat:appcompat依赖里的。
修复步骤
- 修正settings.gradle的仓库配置
把仓库配置里多余的反引号去掉,正确的代码如下:
pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() maven { url 'https://jitpack.io' } } } rootProject.name = "test" include ':app'
- 清理缓存并重新同步
因为之前的错误配置可能导致缓存异常,建议:
- 打开Android Studio,点击顶部菜单栏的
File->Invalidate Caches...,选择Invalidate and Restart - 或者手动删除项目根目录下的
.gradle文件夹和模块下的build文件夹,再点击Sync按钮重新同步
- 验证依赖是否正常拉取
同步完成后,查看项目的External Libraries,确认androidx.appcompat:appcompat:1.6.1是否存在。如果能看到这个依赖,说明问题已经解决,FragmentActivity的访问报错也会消失。
补充说明
你当前build.gradle(:app)里的依赖配置是没问题的,androidx.appcompat:appcompat:1.6.1确实包含了FragmentActivity类,所以核心问题还是出在仓库配置的语法错误上。
备注:内容来源于stack exchange,提问作者Moh Rah
相关产品推荐
相关产品推荐

