首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在插件{}之前设置变量

无法在插件{}之前设置变量
EN

Stack Overflow用户
提问于 2019-07-16 10:42:37
回答 3查看 1.5K关注 0票数 1

我有这个build.gradle

代码语言:javascript
复制
plugins {
    id 'org.springframework.boot' version '2.1.6.RELEASE'
    id 'java'
    id 'eclipse-wtp'
}

[...]

dependencies {
    compileOnly group: 'org.springframework.boot', name: 'spring-boot-dependencies', version: '2.1.6.RELEASE', ext: 'pom'

[...]

我会指定一个变量springBootVersion = "2.1.6.RELEASE"。不幸的是,这是不可能的,因为我得到了这个错误:

在插件{}块之前,只允许构建脚本{}和其他插件{}脚本块。

我还试图从spring-boot-dependencies中删除该版本,但我得到了以下错误:

无法解决: org.springframework.boot:spring-boot-dependencies

有没有办法在plugin{}块之前声明变量,或者从spring-boot-dependencies中删除版本?

我用的是5.4.1级

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-07-16 18:27:51

不能在插件块中使用变量。请查看此处的“严格语法”部分:https://docs.gradle.org/current/javadoc/org/gradle/plugin/use/PluginDependenciesSpec.html还:https://github.com/gradle/gradle/issues/3593

您不需要在任何地方定义spring引导版本,只需在插件块中定义,方法是应用spring启动插件(org.springframework.boot),然后在该块之后应用(io.Spring. define )。然后,后者将负责根据引导插件版本解析正确的版本。

如果还不知道,我建议使用https://start.spring.io/来生成spring引导项目,因为它可以生成一个准备就绪的gradle项目。

票数 0
EN

Stack Overflow用户

发布于 2019-07-16 11:52:17

也许吧

代码语言:javascript
复制
plugins {
    ext.springBootVersion = '2.1.6.RELEASE' 
    id 'org.springframework.boot' version springBootVersion
    ... 
}

[...]

dependencies {
    compileOnly "org.springframework.boot:spring-boot-dependencies:${plugins.springBootVersion}@pom"
票数 0
EN

Stack Overflow用户

发布于 2022-04-05 11:51:56

使用buildscript,您可以这样做:

代码语言:javascript
复制
buildscript {
  ext {
    springBootVersion = '2.6.6'
  }
}
plugins {
  id 'org.springframework.boot' version "${springBootVersion}"
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57055430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档