You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows环境下Android Studio中执行gradlew/gradle wrapper命令报错咨询

解决Gradlew命令找不到及Wrapper配置错误的问题

一、执行gradlew命令的正确目录

你必须在你的Android项目根目录(也就是D:\ASWorkspace\MyApp)下执行gradlew命令,绝对不是Gradle的安装目录。

Gradle Wrapper(gradlew/gradlew.bat)是和项目绑定的工具,每个Android项目创建时都会自动在根目录生成这两个文件。它的核心作用是为当前项目自动下载并匹配指定版本的Gradle,完全不需要你手动配置系统级的Gradle环境变量。

如果你的项目根目录里找不到这两个文件,才需要手动生成Wrapper,但生成命令也必须在项目根目录执行。

二、解决gradle wrapper --gradle-version 4.1的执行错误

你遇到的报错,本质是选错了执行命令的目录:你在Gradle的安装目录C:\Users\Administrator\.gradle\wrapper\dists\gradle-4.1-all\bzyivzo6n839fup2jbap0tjew\gradle-4.1\bin)下执行了gradle wrapper命令——这个命令是用来为**当前所在目录(即你的项目)**生成Wrapper文件的,你在Gradle安装目录执行它,它会尝试在该目录下创建Wrapper相关文件,但这里的gradle是一个可执行文件,不是目录,自然会报错“ancestor ... is not a directory”。

正确生成Wrapper文件的步骤(如果项目根目录没有的话):

  1. 打开终端,切换到项目根目录:
    cd D:\ASWorkspace\MyApp
    
  2. 确保系统能识别gradle命令:你已经能在Gradle安装目录执行gradle -v,可以把Gradle的bin目录添加到系统环境变量PATH中,这样任何目录都能直接调用gradle;或者直接使用Gradle的绝对路径执行命令。
  3. 在项目根目录执行生成命令:
    gradle wrapper --gradle-version 4.1
    
    执行完成后,你的项目根目录会生成gradlewgradlew.bat以及gradle/wrapper目录(里面包含gradle-wrapper.jargradle-wrapper.properties)。

三、正常执行gradlew命令的操作步骤

  1. 切换到项目根目录:
    cd D:\ASWorkspace\MyApp
    
  2. 根据终端类型执行对应命令:
    • Windows系统的CMD/PowerShell:直接执行.bat文件,比如查看版本:
      gradlew.bat -v
      
    • 使用Git Bash等类Unix终端:执行脚本文件:
      ./gradlew -v
      

额外提示

  • 不要修改Gradle安装目录里的任何文件,那是Gradle的核心运行文件,所有和项目相关的Wrapper操作都应该在项目目录下完成。
  • 如果你的Android Studio已经打开了这个项目,直接用AS自带的终端即可——它会自动切换到项目根目录,你直接输入gradlew相关命令就能运行,不用手动切换路径。

内容的提问来源于stack exchange,提问作者gesanri

火山引擎 最新活动