WSL环境Buildozer安卓打包报错:git config --get remote.origin.url失败
报错根因
这个错误是Buildozer缓存的python-for-android(简称p4a,Android打包核心依赖)本地Git仓库损坏导致的,触发点是Buildozer读取该仓库远程origin地址时失败,和你自身项目的Git配置无关,不需要额外配置--repo启动参数。
你当前环境还有个隐性问题:项目和虚拟环境都放在WSL挂载的Windows C盘路径(/mnt/c/开头)下,NTFS文件系统不兼容Linux下Git仓库的权限配置,是导致缓存仓库拉取损坏的核心诱因。
解决步骤
- 终止当前正在运行的Buildozer进程,回到项目根目录。
- 删除已经损坏的p4a缓存目录,执行命令:
rm -rf .buildozer/android/platform/python-for-android - 把整个FlappyTypeGame项目文件夹从C盘挂载路径,拷贝到WSL本地的用户目录下,比如
/home/nemo/projects/路径,不要在/mnt开头的Windows挂载盘里做编译操作,否则后续还会遇到权限错误、编译速度极慢、APK打包失败等问题。 - 在WSL本地路径下的项目目录里,重新激活虚拟环境,确认buildozer依赖正常后,执行编译命令:
buildozer -v android debug
首次运行会重新拉取完整的p4a依赖仓库,不会再触发该Git报错。
后续避坑提示
- 你当前安装的Java 13版本过高,Buildozer打包Android应用最高兼容Java 11,后续如果报Java版本相关错误,执行
sudo apt install openjdk-11-jdk,再通过sudo update-alternatives --config java切换默认Java版本为11即可。 - 如果重新拉取p4a时还是报错,可以打开项目下的buildozer.spec文件,找到
p4a.branch配置项,将值改为稳定版本分支master,避免拉取到残缺的开发分支代码。
内容的提问来源于stack exchange,提问作者sillywonka
相关产品推荐
相关产品推荐

