Android项目引入frescoimageviewer报401 Unauthorized如何解决
错误原因
Could not HEAD 'https://jitpack.io/com/github/stfalcon/frescoimageviewer/0.5.0/frescoimageviewer-0.5.0.pom'. Received status code 401 from server: Unauthorized Disable Gradle 'offline mode' and sync project
上述401未授权错误的触发原因主要有三点:
- 原作者的frescoimageviewer仓库已经归档停止维护,JitPack对该仓库0.5.0版本的公开访问权限进行了限制,直接拉取旧版本会触发未授权提示
- 项目Gradle配置中未正确添加JitPack仓库,或者仓库配置的位置不符合当前Gradle版本要求
- 本地Gradle开启了离线模式,或者本地缓存的JitPack访问凭证过期
正确接入步骤
- 调整仓库配置
如果使用Gradle 7.0及以上版本,打开项目根目录的settings.gradle文件,在dependencyResolutionManagement的repositories块中添加JitPack仓库:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() maven { url 'https://jitpack.io' } } }
如果使用Gradle 7.0以下版本,打开项目根目录的build.gradle文件,在allprojects -> repositories块中添加上述JitPack配置。
- 更换可用的依赖版本
原官方0.5.0版本已经无法公开拉取,将原依赖implementation 'com.github.stfalcon:frescoimageviewer:0.5.0'替换为公开可访问的归档复刻版本:
implementation 'com.github.original-stfalcon:frescoimageviewer:0.5.0'
关闭Gradle离线模式
打开Android Studio的设置界面,依次进入Build, Execution, Deployment->Build Tools->Gradle,取消勾选Offline work选项,保存后点击同步Gradle按钮即可。可选:清除本地缓存重新同步
如果上述操作完成后仍然报错,执行./gradlew clean命令清除项目构建缓存,之后再重新同步Gradle即可正常拉取依赖。
内容的提问来源于stack exchange,提问作者Kalash tvoego bati
相关产品推荐
相关产品推荐

