我们应该选择哪种方式在gradle中编写api引用
现在在我的项目中,有很多方法可以在我们应该选择哪种方式在gradle中编写api引用,gradle,Gradle,现在在我的项目中,有很多方法可以在build.gradle中添加依赖项,它看起来不太干净,所以我想在整个项目中选择一种方法,现在gradle版本是6.0,依赖项如下: api "com.zaxxer:HikariCP:3.4.5" 或者这个: api group: 'com.aliyun.oss', name: 'aliyun-sdk-oss', version: '3.8.0' api "com.baomidou:mybatis-plus-boot-start
build.gradle
中添加依赖项,它看起来不太干净,所以我想在整个项目中选择一种方法,现在gradle版本是6.0,依赖项如下:
api "com.zaxxer:HikariCP:3.4.5"
或者这个:
api group: 'com.aliyun.oss', name: 'aliyun-sdk-oss', version: '3.8.0'
api "com.baomidou:mybatis-plus-boot-starter:3.2.0"
或者这个:
api group: 'com.aliyun.oss', name: 'aliyun-sdk-oss', version: '3.8.0'
api "com.baomidou:mybatis-plus-boot-starter:3.2.0"
这是:
api("org.coody.framework:coody-elock:alpha-1.3.4")
还有很多其他的方法。这让我感到困惑,“和”有什么区别?有什么区别(或没有?哪种方式是推荐方式?哪种方式是更好的方式?为什么我们应该这样写?这些都是依赖性符号的形式。请参阅此处的文档: 看到有很多方法可以做同样的事情是令人困惑的,但是最好坚持一种风格并在整个项目中使用 您将看到的最常见的形式是以下两种:
api "com.baomidou:mybatis-plus-boot-starter:3.2.0" // double quoted string
api 'com.baomidou:mybatis-plus-boot-starter:3.2.0' // single quoted string
对于其他问题,您需要知道有(2)种编写Gradle构建文件的方法:
- Groovy DSL(
)build.gradle
- Kotlin DSL(
)-build.gradle.kts
”
和“
在Groovy DSL中,单引号字符串和双引号字符串实际上是相同的。文档中描述了它们之间的差异,但对于上面的示例,实现了相同的结果。这归结为您使用哪个字符串的首选项
在Kotlin DSL中,单引号表示a,双引号表示a。因此,如果使用Kotlin DSL,则必须使用双引号
有什么不同
在Groovy DSL中,括号是可选的。这是Groovy语言本身的一项功能,而不是Gradle实现的功能。您可以在此处阅读更多有关它的内容:。一般来说,没有区别,它归结为首选项
Kotlin也具有此功能,但由于它是静态类型的,因此在与Gradle无关的地方可以和不能使用它有一些限制。您可以在此处准备更多关于它的信息:
哪种方式更好?为什么我们要这样写
做事情没有更好或正确的方法。重要的是一致性。坚持一种风格,并在整个项目中使用它
除此之外,Spring Boot团队最近迁移到了Gradle。您可以在以下博客中了解他们的迁移工作: 在博客的评论中,解释了为什么他们选择Groovy DSL而不是Kotlin DSL: 根据我们的经验,使用Kotlin DSL需要IDE的帮助,而Groovy DSL可以手工编写。虽然Kotlin DSL的自动完成功能在IntelliJ IDEA中非常出色,但在Eclipse中却不是这样。我们的团队使用Eclipse和IntelliJ IDEA的混合,我们还希望项目能够被contributo访问总之,这导致我们在build.gradle脚本中使用Groovy DSL