Android添加Neumorphism和DayNightSwitch依赖时构建失败如何解决?
问题诱因
- 缺失JitPack仓库配置:你使用的两个依赖均是托管在JitPack的GitHub开源包,默认的Google Maven、Maven Central仓库没有收录这两个组件,构建时无法从默认源拉取对应资源。
- Gradle版本适配问题:你使用的Gradle 7.0+版本调整了全局仓库的配置入口,默认不再读取根目录build.gradle的
allprojects仓库配置,改由settings.gradle的dependencyResolutionManagement块统一管理,未正确配置的情况下新增的第三方仓库不会生效。 - 依赖版本占位符未替换:Neumorphism依赖中你保留了
{latest_version}占位符,未替换为实际的版本号也会触发资源匹配失败。
解决方案
- 配置全局JitPack仓库
打开项目根目录的settings.gradle文件,在dependencyResolutionManagement的repositories块中添加JitPack地址,配置示例如下:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() // 新增JitPack仓库 maven { url 'https://jitpack.io' } } }
如果你使用的是7.0以下的旧版Gradle,就在根目录build.gradle的allprojects->repositories块中添加上述JitPack配置即可。
- 修正依赖版本配置
将Neumorphism的版本占位符替换为实际的稳定版本号,正确的依赖配置如下:
dependencies { // Neumorphism依赖,替换占位符为实际版本 implementation 'com.github.fornewid:neumorphism:0.3.0' // DayNightSwitch依赖无需修改 implementation 'com.github.Mahfa:DayNightSwitch:1.4' }
- 重新同步项目
修改完成后点击Android Studio右上角的「Sync Project with Gradle Files」按钮同步配置,如果仍有报错可以执行缓存清理操作:选择菜单栏File -> Invalidate Caches...勾选清理选项后重启IDE,再执行./gradlew clean命令清理构建缓存后重新编译即可。
内容的提问来源于stack exchange,提问作者Coder_pak
相关产品推荐
相关产品推荐

