更新Android Studio 3.2后./gradlew命令行执行失败求助
解决Android Studio 3.2升级后命令行
./gradlew报错的问题 我之前也碰到过一模一样的情况,核心原因基本都是命令行环境与Android Studio GUI使用的运行环境不一致,导致Gradle插件初始化失败。以下是几个针对性的排查和解决步骤:
1. 检查命令行的JDK版本是否符合要求
Android Studio 3.2对应的Gradle插件(3.2.x系列)要求必须使用JDK 8。你可以在终端执行以下命令查看当前命令行使用的JDK版本:
java -version javac -version
如果输出不是1.8.x系列,需要切换到JDK 8:
- 可以手动设置
JAVA_HOME环境变量指向你的JDK 8安装路径; - 或者直接使用Android Studio自带的JDK,路径一般是:
把这个路径设置为# macOS /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home # Windows C:\Program Files\Android\Android Studio\jre\jdk # Linux /opt/android-studio/jre/jdkJAVA_HOME后,重新打开终端再执行./gradlew试试。
2. 确保使用项目自带的Gradle Wrapper
有时候全局安装的Gradle版本和项目要求的版本不兼容,一定要用项目根目录下的./gradlew(而不是直接用gradle命令),它会自动下载并使用项目指定的Gradle版本。
你可以检查项目的gradle/wrapper/gradle-wrapper.properties文件,确认distributionUrl是否和Android Studio 3.2匹配:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
(Gradle插件3.2.x对应的Gradle版本范围是4.6~5.4.1,推荐用4.6版本)
3. 清理Gradle缓存
缓存损坏也可能导致插件初始化失败,执行以下命令清理缓存:
# 清理项目构建缓存 ./gradlew cleanBuildCache # 或者删除用户目录下的Gradle全局缓存(谨慎操作,会清空所有项目的缓存) rm -rf ~/.gradle/caches # macOS/Linux rd /s /q %USERPROFILE%\.gradle\caches # Windows
清理完成后,重新执行./gradlew tasks测试是否正常。
4. 检查项目的Gradle插件版本
打开项目根目录的build.gradle文件,确认classpath中的插件版本是3.2.x,和Android Studio版本匹配:
buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' // 确保是3.2.x版本 } }
5. 验证gradlew的执行权限
如果是Linux或macOS系统,可能存在gradlew没有执行权限的情况,执行以下命令添加权限:
chmod +x ./gradlew
按照上面的步骤逐一排查,应该能解决命令行执行./gradlew报错的问题。
内容的提问来源于stack exchange,提问作者bryant
相关产品推荐
相关产品推荐

