使用 gradlew 和 gradle 的区别

Difference between using gradlew and gradle

使用 gradlewgradle 有什么区别或者它们是一样的?

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

Each Wrapper is tied to a specific version of Gradle, so when you first run one of the commands above for a given Gradle version, it will download the corresponding Gradle distribution and use it to execute the build.

Not only does this mean that you don’t have to manually install Gradle yourself, but you are also sure to use the version of Gradle that the build is designed for. This makes your historical builds more reliable

在此处阅读更多信息 - https://docs.gradle.org/current/userguide/gradle_wrapper.html

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

gradle 对比 gradlew

gradlew 是一个使用 gradle.

的包装器(w - 字符)

在幕后 gradlew 执行三项主要工作:

  • 下载并安装正确的 gradle 版本
  • 解析参数
  • 调用 gradle 任务

使用 Gradle Wrapper 我们可以 distribute/share 一个项目给每个人使用相同的版本和 Gradle 的功能(编译,构建,安装...)即使它尚未安装。

创建包装器运行:

gradle wrapper

此命令生成:

gradle-wrapper.properties 将包含有关 Gradle 分布的信息

*./ 在Unix上用于指定当前目录