Android项目同步报错:Could not create parent directory for lock file求助
解决Gradle锁文件父目录创建失败问题
核心原因
报错指向的路径/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home/wrapper/属于系统级目录,默认只有管理员权限才能写入,Gradle wrapper尝试在此生成锁文件时因权限不足失败,该问题和Gradle版本无关。
解决方案
方案1:修改目录权限
打开终端,执行以下命令赋予当前用户该目录的读写权限:
sudo chown -R $USER /Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home/wrapper/
输入系统密码后回车,完成权限修改后重新同步项目。
方案2:自定义Gradle wrapper存储路径
若不想修改系统目录权限,可在项目根目录的gradle.properties文件中添加以下配置,将Gradle wrapper的存储路径指定到用户目录下:
gradle.user.home=~/gradle-wrapper
保存文件后重新执行同步操作,Gradle会将缓存和锁文件存储到用户目录(默认具备读写权限)。
方案3:清理现有缓存并重新下载
如果目录权限正常但缓存损坏,可先清理现有Gradle缓存:
rm -rf ~/.gradle/caches/ rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home/wrapper/dists/
之后重新打开Android Studio执行同步操作,让Gradle重新下载对应版本的压缩包。
内容的提问来源于stack exchange,提问作者Swapnil Akubattin
相关产品推荐
相关产品推荐

