没有找到gradlew命令?


118

我正在使用gradlew进行Java项目。我使用Ubuntu Linux作为操作系统。当我运行“ gradle”时,它将运行并提供信息。但是,当我运行“ gradlew”时,其输出为“未找到命令'gradlew',您的意思是:软件包'gradle'(universe)gradlew中的命令'gradle':未找到命令”

我做了研究,有了jdk,并且做了sudo apt-get install gradle。我完全一无所知


51
运行./gradlew。它不在您的路径上,而是一个可执行文件,位于您检出的项目的根目录中。
mkobit

2
阅读gradle包装器上的文档docs.gradle.org/current/userguide/gradle_wrapper.html
ditkin

Answers:


100

需要构建Gradle包装器。尝试运行“ gradle wrapper --gradle-version 2.13切记”,将2.13更改为Gradle版本号。运行此命令后,您应该看到新脚本已添加到您的项目文件夹中。您应该能够运行包装器./gradlew build来构建代码。请参阅该指南以获取更多信息https://spring.io/guides/gs/gradle/


173

Linux / MacOS

正如评论中指出的那样,

./gradlew

为我工作。添加./告诉它要在当前目录中查找,因为它不在路径中。

Windows PowerShell

.\gradlew

26
如果不起作用,请先尝试“ chmod + x gradlew”,然后尝试“ ./gradlew”
Fadi

对于macOS catalina,“ sudo bash ./gradlew”对我有用
丹尼尔

52

运行bash命令对我来说是有效的,chmod 755 gradlew因为有时在从一个操作系统迁移到另一个操作系统(Windows,Linux和Mac)时文件属性也会发生变化。


14
当然可以755吗 您不想让任何人都覆盖受信任的可执行文件。
David Knipe

7
chmod 777 ...经典。
vilpe89 '18 -10-5

1
请不要推荐“ chmod 777”。可执行文件永远不应该是世界可写的。
凯利·塞泽尔

19

我遇到了同样的问题...我使用以下命令检查文件wrx权限:
$ls -l ./gradlew-> -rw-rw-r-(无执行权限)

所以我使用命令$chmod +x ./gradlew并解决了这个问题。


15

从Mac,

除以下命令外,所有操作均无效

chmod 777 gradlew然后

./gradlew


gradlew需要linux / mac上的权限,在我的项目根目录下使用chmod 777 gradlew后,对我来说是有效的。
Faisal

1
“ chmod 777”使gradlew世界变得可写。这是一个主要的安全问题。请改用“ chmod 555”。
凯利·塞泽尔

我建议使用chmod 755(-rwxr-xr-x)。超过777
不是斯坦(Stan)


10

另外是@suraghch

Linux / MacOS ./gradlew清除

Windows PowerShell 。\ gradlew干净

Windows cmd gradlew清洁


5

对于Ubuntu(linux)用户:执行"bash ./gradlew build“可以,但是”不能./gradlew build

对我来说,问题在于它位于NTFS文件系统上,Linux不允许从NTFS执行脚本。尝试将代码从NTFS移到linux分区。然后./gradlew build应该工作


同样适用于RedHat 7
G_V

3

首先,您需要运行此包装程序提到的gradle任务。示例:gradle wrapper运行此命令后,检查目录中是否存在gradlew和gradlew.bat文件。gradlew是Shell脚本文件,可以在linux / Mac OS中使用。gradlew.bat是Windows操作系统的批处理文件。然后跑

./gradlew build(linux / mac)。它将起作用。


1

如果标记为正确的答案不起作用,那是因为您需要将自己标识为超级用户。

sudo gradle包装器--gradle-version 2.13

它为我工作。


1

如果您将VS Code与flutter一起使用,则应在android文件夹下的app文件夹中找到它:

C:\ myappFolder \ android

您可以在终端中运行此命令:

./gradlew signingReport

1

使用之前,您必须在本地具有Gradle包装器gradlew。构造那个

gradle wrapper # --gradle-version v.xy

(可选)显式传递gradle版本。此步骤生成gradlew二进制文件,然后您应该能够

./gradlew build

0

我在终端类型的窗口中使用intellj idea:gradlew.bat run 它对我有用 。


1
Windows是不同的。由于某种原因,.即使很明显不在路径中,它也总是像在路径中一样解析可执行文件。
古斯

0

嗨,@ Hayden Stites,我遇到了同样的问题,但是经过一番尝试,我发现它正在发生,因为我试图在git bash中创建build,而不是通过具有管理员权限的CMD创建。如果使用Command提示符创建构建,则以管理员身份运行将生成create。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.