Spring boot 使用Spring Boot gradle插件时通过gradle.properties更改Spring Boot应用程序版本

Spring boot 使用Spring Boot gradle插件时通过gradle.properties更改Spring Boot应用程序版本,spring-boot,gradle,Spring Boot,Gradle,我正在使用Spring boot gradle插件,并已将其放入我的应用程序.yml: spring: application: name: myapp version: ${version} 我使用以下方法处理令牌的资源文件: processResources { filesMatching('application.yml') { expand(project.properties) } } 我在控制器中使用此注释: public

我正在使用Spring boot gradle插件,并已将其放入我的
应用程序.yml

spring:
    application:
        name: myapp
        version: ${version}
我使用以下方法处理令牌的资源文件:

processResources {
  filesMatching('application.yml') {
    expand(project.properties)
  }
}
我在控制器中使用此注释:

public class MyController {
  @Value("${spring.application.version}")
  private String appversion
...
一切都很好,耶!问题是,我无法确定实际控制版本的是什么,因为此报告版本
0.0.1-SNAPSHOT
,即使我在
gradle.properties
中指定了不同的
version

我试着更新了以下内容:


但它没有效果。有人能帮助我了解使用Spring Boot gradle插件增加/管理版本的正确方法吗?

正如我在评论中所说,您在
gradle.properties
中设置版本的方法以及您如何配置
应用程序.yml
是正确的


我猜您仍然在主
build.gradle
中定义了
版本
属性,它使用值
0.0.1-SNAPSHOT

覆盖
gradle.properties
中设置的值,您定义
application.yml
属性文件和
processResources
任务配置的方式正确:如果未考虑在
gradle.properties
文件中定义的版本,这可能意味着此版本在其他地方被覆盖:可能您仍然有一个
version
属性直接定义在
build.gradle
脚本(或者根项目脚本,如果您有多项目生成)一种快速的测试方法:1)在build.gradle中定义属性版本:
version=dummy
2)执行gradle任务
processResources
3)检查
/build/resources/main/application.yml的内容!果然,我在
build.gradle
中定义了一个我错过的版本。很高兴在SOF有一双独立的眼睛。真是松了一口气!请回答,我会确认。
springBoot {
  buildInfo {
    properties {
      version = "${project.version}"
    }
  }
}