Kotlin 中的 Gradle 构建系统是什么?

ath*_*rva 1 kotlin

我在阅读 Kotlin 文档时发现了这样的说法: 默认情况下,您的项目将使用 Gradle 构建系统和 Kotlin DSL。 这是什么意思?我在 IntelliJ 中创建新项目时看到了 Gradle Kotlin 选项: IntelliJ项目配置截图

有人可以向我解释一下这些,以及作为初学者我应该使用哪个捆绑包吗?

Sam*_*Sam 5

构建系统组合并简化了构建和分发程序所涉及的一些关键任务。构建系统所做的主要事情包括:

  • 下载您的应用程序具有的任何依赖项
  • 针对您的应用程序运行测试
  • 编译你的代码
  • 将您的应用程序及其依赖项打包成可以与其他人共享的形式

您可以自己单独运行所有这些任务,但构建系统使其变得更加容易并且不太容易出错。实际上,除了最小的项目之外,所有项目都使用某种构建系统。Gradle 就是这样一种工具,但您也可以使用 Maven 或 IntelliJ 等 IDE 中内置的工具。

我应该使用哪一个?

如果这是一个个人项目,那么像 IntelliJ 这样的 IDE 中内置的构建系统和工具就足够好了。

如果您与其他人一起工作,您可能需要考虑使用独立的构建系统。这是因为像 Gradle 这样的独立构建系统可以与多个 IDE 一起使用,也可以在没有 IDE 的情况下在命令行上使用。具有许多贡献者的大型项目通常会运行一个构建服务器,该服务器以自动方式针对所有新更改运行构建系统,以确保代码按预期构建和运行。

像 IntelliJ 这样的 IDE 与常见的构建系统(包括 Maven 和 Gradle)具有很好的集成,因此选择它们而不是内置 IDE 工具不会让自己处于不利地位。

Maven、Gradle 还是 Gradle 与 Kotlin?

您可以找到许多其他资源来比较 Maven 和 Gradle。不过,关键的区别在于编写构建脚本的方式,该脚本允许您自定义构建的依赖项、测试和其他参数。

  • Maven中,您的构建脚本是一个XML文件。它遵循严格的结构,为现有任务和插件提供输入和配置。
  • Gradle中,构建脚本历史上是用Groovy编写的,这是一种松散类型的语言,为您提供了很大的灵活性。除了配置任务和插件之外,您还可以轻松添加自己的任务和功能。
  • 您还可以选择使用Kotlin编写 Gradle 构建脚本。这提供了与 Groovy 相同的灵活性和自定义功能,但添加类型系统意味着 IDE 可以为您提供更多帮助,帮助您正确编写脚本。