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

时间:2020-08-30 07:36:20

标签: kotlin

我正在阅读Kotlin文档,偶然发现了该声明, 默认情况下,您的项目将使用带有Kotlin DSL的Gradle构建系统。 这是什么意思? 在IntelliJ中创建新项目时,我已经看到Gradle Kotlin选项: Screenshot of IntelliJ project configuration

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

1 个答案:

答案 0 :(得分:3)

构建系统结合并简化了一些有关构建和分发程序的关键任务。构建系统所做的主要工作包括:

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

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

我应该使用哪个?

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

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

像IntelliJ这样的IDE与常见的构建系统(包括Maven和Gradle)都具有很好的集成,因此,通过在内置的IDE工具中选择它们不会对自己不利。

Maven,Gradle或与Kotlin兼容吗?

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

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