不同之处在于 ./gradlew
表示您正在使用 gradle 包装器。包装器通常是项目的一部分,它有助于安装 gradle。如果您在没有包装器的情况下使用 gradle,则必须手动安装它 - 例如,在 mac brew install gradle
上,然后使用 gradle
命令调用 gradle。在这两种情况下,您都使用 gradle,但前者更方便并确保不同机器之间的版本一致性。
每个 Wrapper 都与特定版本的 Gradle 相关联,因此当您第一次为给定的 Gradle 版本运行上述命令之一时,它将下载相应的 Gradle 发行版并使用它来执行构建。这不仅意味着您不必自己手动安装 Gradle,而且您还可以确保使用构建所针对的 Gradle 版本。这使您的历史构建更可靠
在此处阅读更多信息 - 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,我们可以将项目分发/共享给每个人,以使用相同的版本和 Gradle 的功能(编译、构建、安装......),即使它尚未安装。
要创建包装器运行:
gradle wrapper
此命令生成:
gradle-wrapper.properties
将包含有关 Gradle 分发的信息
*./
在 Unix 上用于指定当前目录
./gradlew build
而不是gradle build
对吗?clean
并且build
是默认任务,当您执行./gradlew