如何修复NativeScript应用运行tns run android时的build.gradle 403错误
问题原因
JFrog于2021年正式关停Bintray服务,原dl.bintray.com域名下的所有包下载地址均已失效,触发403报错。fancycamera属于你项目中某款NativeScript插件的传递依赖,不会直接展示在package.json的直接依赖清单中。
修复步骤
- 清理旧构建缓存
先删除已生成的安卓平台目录,清除残留的旧gradle配置:
同步清理npm本地缓存:tns platform remove androidnpm cache clean --force - 替换失效maven源
在项目根目录找到nativeScript.android.gradle文件,没有就新建,添加以下配置覆盖原有仓库地址:allprojects { repositories { maven { url 'https://jitpack.io' } maven { url 'https://maven.google.com' } // 替换原失效的triniwiz bintray源 maven { url 'https://maven.pkg.github.com/triniwiz/maven' } mavenCentral() } } - 升级关联插件
排查package.json中的相机、多媒体类NativeScript插件(常见的包括nativescript-camera、nativescript-imagepicker等),将其升级到最新版本,新版本插件一般已经完成依赖源的替换适配。 - 重新构建项目
重新添加安卓平台后启动项目:tns platform add android tns run android - 兼容方案
如果升级插件后问题仍存在,可在package.json中添加overrides配置强制指定fancycamera的可用版本(需npm 8及以上版本支持):"overrides": { "fancycamera": "3.0.0-alpha17" }
内容的提问来源于stack exchange,提问作者Mike Boonekamp
相关产品推荐
相关产品推荐

