gpt4 book ai didi

gradle - 如何/何时生成 Gradle 包装文件?

转载 作者:行者123 更新时间:2023-12-02 09:03:55 26 4
gpt4 key购买 nike

我试图了解 Gradle Wrapper 的工作原理。在许多源代码库中,我看到以下结构:

projectRoot/
src/
build.gradle
gradle.properties
settings.gradle
gradlew
gradlew.bat
gradle/
wrapper/
gradle-wrapper.jar
gradle-wrapper.properties

我的问题:

  1. 如何/何时生成 gradlew/gradlew.bat?您是否应该在第一次创建项目时只生成一次它们,是否在每次提交/推送更改时生成它们?它们是如何生成的?
  2. 与上述问题相同,但针对的是 gradle/wrapper/* 文件(gradle-wrapper.jargradle-wrapper.properties) ?
  3. 有时我会在项目的 gradle 目录中看到其他 *.gradle 文件。这些额外的 Gradle 文件是什么?它们代表什么/做什么?自定义插件?
  4. settings.gradle 中的属性与应在 gradle.properties 中定义的属性有何区别?

最佳答案

  1. 您可以生成一次它,当您想要更改项目中使用的 Gradle 版本时,可以再次生成它。没必要这么频繁地生成。 Here是文档。只需将 wrapper 任务添加到 build.gradle 文件并运行此任务即可获取包装器结构。

    请注意,您需要安装 Gradle 才能生成包装器。管理 g 生态系统工件的绝佳工具是 SDKMAN! 。要生成 gradle 包装器,请将以下代码添加到 build.gradle 文件中:

    task wrapper(type: Wrapper) {
    gradleVersion = '2.0' //version required
    }

    并运行:

    gradle wrapper

    任务。将生成的文件添加到 SCM(例如 git),从现在开始,所有开发人员在使用 Gradle Wrapper 时都将拥有相同版本的 Gradle。

    使用 Gradle 2.4(或更高版本),您可以设置包装器而无需添加专用任务:

    gradle wrapper --gradle-version 2.3

    gradle wrapper --gradle-distribution-url https://myEnterpriseRepository:7070/gradle/distributions/gradle-2.3-bin.zip

    所有详情可查看here

从 Gradle 3.1 也可以使用 --distribution-type 选项。选项有二进制、allbin全部还包含源代码和文档。使用 IDE 时all也更好,因此编辑器工作得更好。缺点是构建可能会持续更长时间(需要下载更多数据,在 CI 服务器上毫无意义)并且会占用更多空间。

  • 这些是 Gradle Wrapper 文件。您需要生成一次它们(对于特定版本)并添加到版本控制中。如果您需要更改 Gradle Wrapper 的版本,请更改 build.gradle 中的版本,请参阅 (1.) 并重新生成文件。

  • 举一个详细的例子。此类文件可能有多种用途:多模块项目、职责分离、稍微修改的脚本等。

  • settings.gradle 负责项目的结构(模块、名称等),而 gradle.properties 用于项目和 Gradle 的结构外部详细信息(版本、命令行参数-XX、属性等)

  • 关于gradle - 如何/何时生成 Gradle 包装文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25769536/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com