使用gradlew和gradle之间的区别

问题描述 投票:160回答:2

使用gradlewgradle有什么区别?它们是否相同?

gradle gradlew
2个回答
168
投票

不同之处在于./gradlew表明您正在使用gradle包装器。包装器通常是项目的一部分,它便于安装gradle。如果您在没有包装器的情况下使用gradle,则必须手动安装它 - 例如,在mac brew install gradle上,然后使用gradle命令调用gradle。在这两种情况下,您都使用gradle,但前者更方便,并确保不同机器之间的版本一致性。

每个Wrapper都绑定到特定版本的Gradle,因此当您第一次运行上述命令之一时,它将下载相应的Gradle版本并使用它来执行构建。

这不仅意味着您不必自己手动安装Gradle,而且还确保使用构建所针对的Gradle版本。这使您的历史构建更可靠

在这里阅读更多 - https://docs.gradle.org/current/userguide/gradle_wrapper.html

此外,Udacity有一个整洁,高水平的视频解释了gradle包装的概念 - https://www.youtube.com/watch?v=1aA949H-shk


26
投票

gradlew是一个使用gradle的包装器。

在引擎盖下,Gradle Wrapper执行三项任务:

  1. 解析传递给gradlew的参数
  2. 安装正确的Gradle版本
  3. 调用Gradle以运行指定的任务

使用Gradle Wrapper,您无需自己管理项目Gradle分发。这意味着项目中的每个开发人员都使用相同版本的Gradle并可以运行Gradle构建(即使未安装Gradle)

在这里阅读更多 - https://medium.com/@bherbst/understanding-the-gradle-wrapper-a62f35662ab7

© www.soinside.com 2019 - 2024. All rights reserved.