Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot can';t使用';springBoot&x27;kotlin构建脚本中的作用域_Spring Boot_Gradle_Gradle Plugin_Gradle Kotlin Dsl - Fatal编程技术网

Spring boot can';t使用';springBoot&x27;kotlin构建脚本中的作用域

Spring boot can';t使用';springBoot&x27;kotlin构建脚本中的作用域,spring-boot,gradle,gradle-plugin,gradle-kotlin-dsl,Spring Boot,Gradle,Gradle Plugin,Gradle Kotlin Dsl,我有个问题 有一个关于spring boot gradle插件的问题。我写了一个允许指定版本的spring引导示例(例如2.2.1.RELEASE) 顺便说一句,springBoot范围在应用传统插件应用程序风格编写的springBoot gradle插件时不可用。但插件DSL风格不是问题。 我知道Kotlin构建脚本中的插件范围中没有动态版本分配,所以我必须使用遗留插件应用程序风格来编写 代码如下: 使用旧插件应用程序: buildscript { repositories { g

我有个问题

有一个关于spring boot gradle插件的问题。我写了一个允许指定版本的spring引导示例(例如
2.2.1.RELEASE

顺便说一句,
springBoot
范围在应用传统插件应用程序风格编写的
springBoot gradle插件时不可用。但插件DSL风格不是问题。

我知道Kotlin构建脚本中的插件范围中没有动态版本分配,所以我必须使用遗留插件应用程序风格来编写

代码如下:

使用旧插件应用程序:

buildscript {
  repositories {
    gradlePluginPortal()
  }
  dependencies {
    classpath("org.springframework.boot:spring-boot-gradle-plugin:2.2.1.RELEASE")
  }
}

apply(plugin = "org.springframework.boot")

springBoot {
  mainClassName = "blabla~~"
}
e:…/build.gradle.kts:25:1:未解析的引用:springBoot

使用插件DSL:

plugins {
  id("org.springframework.boot") version "2.2.1.RELEASE"
}

springBoot {
  mainClassName = "blabla~~"
}
没问题


谢谢!这是完全正常的,也是意料之中的。Kotlin DSL仅在使用插件块应用插件时才提供插件扩展。@jbnite感谢您的回复。顺便说一句,我不明白为什么它与我在
Groovy
中编写它时有所不同。如果我使用
Groovy
,我可以使用
springBoot
。这是spring boot gradle插件的问题吗?我在文件中没有看到这种表现。你能告诉我它写在哪里吗?你能给我一个解决方法吗?这是不同的,因为Groovy是一种动态语言,而Kotlin不是。因此,springBoot在Groovy中是可用的,因为它是作为Groovy中项目对象的扩展动态添加的,但只有在编译.kts文件时,才能将它作为Kotlin扩展函数添加,前提是使用plugins块静态应用插件。请参阅中的信息说明。@JBNizet感谢您的详细回复:)