找不到 gradlew(没有这样的文件或目录)
gradlew is not found (No such file or directory)
我从 git 加载一个项目并在 MacBook 上成功构建它。当我在终端 window 中键入“./gradlew assembleRelease”时,出现错误:
bash: ./gradlew: No such file or directory
所以我检查了gradlew是否在项目目录下,但我找不到。
但我仍然可以 运行 来自 'Gradle projects' window 的任务。
怎么了?
gradlew
脚本是所谓的 Gradle 包装器,一个独立的脚本,允许人们在没有安装 gradle 的情况下 运行 Gradle 任务。但是 没有 来执行 Gradle 任务,它是绝对可选的。
您可以通过执行任务在您的项目中生成Wrapper
gradle wrapper
之后,您可以使用 ./gradlew
脚本而不是 PATH
中的 gradle
要指定 Gradle 版本,请在命令行上使用 --gradle-version。
只需执行命令:
gradle wrapper --gradle-version <your gradle version>
查看此处以获得更详尽和全面的解释:https://docs.gradle.org/current/userguide/gradle_wrapper.html
没有那个文件或目录(bash: ./gradlew)
在现有权限的基础上增加所有用户的执行权限
chmod +x gradlew
在我的例子中,我将 gradlew 文件从 windows(10) 复制到 linux(centos7)。
所以不得不 运行
[user@server]$ dos2unix gradlew
它奏效了。
更新:
如果您像我一样从 windows 复制。
做一件事,在 notepad++ 中打开它,转到查看 -> 显示符号 -> 显示行尾。
您可以注意到 CRLF
这是 Windows EOL。现在转换它,这样你就不必重做它。
转换记事本++ -> 编辑 -> EOL 转换 -> Unix (LF
)
就是这样,同时向 git fiddle .gitattributes
推进
检查 android 目录是否存在 gradlew。
如果 gradlew 不存在则执行以下命令。
在 CommandLine 工具上,将目录更改为 android
$ cd android
$ gradle wrapper --gradle-version 6.0.1 (你可以保留你想要的版本)
这将使用默认配置生成与 gradle 相关的所有内容。
对我来说,XML 文件之一中缺少数据绑定变量的名称。
在我的例子中,我已将项目从 Windows 机器移动到 Mac,它包含回车符 returns '\r'。
brew install dos2unix
find . -type f -exec dos2unix {} \;
./gradlew clean build
您应该添加执行权限。
使用 chmod 777 gradlew
或 chmod +x gradlew
.
我从 git 加载一个项目并在 MacBook 上成功构建它。当我在终端 window 中键入“./gradlew assembleRelease”时,出现错误:
bash: ./gradlew: No such file or directory
所以我检查了gradlew是否在项目目录下,但我找不到。 但我仍然可以 运行 来自 'Gradle projects' window 的任务。
怎么了?
gradlew
脚本是所谓的 Gradle 包装器,一个独立的脚本,允许人们在没有安装 gradle 的情况下 运行 Gradle 任务。但是 没有 来执行 Gradle 任务,它是绝对可选的。
您可以通过执行任务在您的项目中生成Wrapper
gradle wrapper
之后,您可以使用 ./gradlew
脚本而不是 PATH
gradle
要指定 Gradle 版本,请在命令行上使用 --gradle-version。 只需执行命令:
gradle wrapper --gradle-version <your gradle version>
查看此处以获得更详尽和全面的解释:https://docs.gradle.org/current/userguide/gradle_wrapper.html
没有那个文件或目录(bash: ./gradlew)
在现有权限的基础上增加所有用户的执行权限
chmod +x gradlew
在我的例子中,我将 gradlew 文件从 windows(10) 复制到 linux(centos7)。
所以不得不 运行
[user@server]$ dos2unix gradlew
它奏效了。
更新:
如果您像我一样从 windows 复制。
做一件事,在 notepad++ 中打开它,转到查看 -> 显示符号 -> 显示行尾。
您可以注意到 CRLF
这是 Windows EOL。现在转换它,这样你就不必重做它。
转换记事本++ -> 编辑 -> EOL 转换 -> Unix (LF
)
就是这样,同时向 git fiddle .gitattributes
推进检查 android 目录是否存在 gradlew。
如果 gradlew 不存在则执行以下命令。
在 CommandLine 工具上,将目录更改为 android
$ cd android
$ gradle wrapper --gradle-version 6.0.1 (你可以保留你想要的版本)
这将使用默认配置生成与 gradle 相关的所有内容。
对我来说,XML 文件之一中缺少数据绑定变量的名称。
在我的例子中,我已将项目从 Windows 机器移动到 Mac,它包含回车符 returns '\r'。
brew install dos2unix
find . -type f -exec dos2unix {} \;
./gradlew clean build
您应该添加执行权限。
使用 chmod 777 gradlew
或 chmod +x gradlew
.