Spring boot 在YAML中使用SpringBoot SpEL

Spring boot 在YAML中使用SpringBoot SpEL,spring-boot,yaml,spring-el,Spring Boot,Yaml,Spring El,在spring boot yaml配置中是否可以使用SpEL调用静态方法函数?我想在端口范围之间找到一个可用端口并设置服务器端口。我知道这可以通过编程实现,但我很好奇这是否可以通过SpEL在YAML中实现。我尝试了以下方法,但它不起作用,因为它将SpEL视为YAML注释 server: port: #{T(org.springframework.util.SocketUtils).findAvailableTcpPort(8000,9000)} 此操作失败,因为它试图将SpEL设置为端

在spring boot yaml配置中是否可以使用SpEL调用静态方法函数?我想在端口范围之间找到一个可用端口并设置服务器端口。我知道这可以通过编程实现,但我很好奇这是否可以通过SpEL在YAML中实现。我尝试了以下方法,但它不起作用,因为它将SpEL视为YAML注释

server:
    port: #{T(org.springframework.util.SocketUtils).findAvailableTcpPort(8000,9000)}
此操作失败,因为它试图将SpEL设置为端口的字符串

server:
    port: "#{T(org.springframework.util.SocketUtils).findAvailableTcpPort(8000,9000)}"

最后,虽然可以在@Value中编写SpEL表达式,但这些表达式不会从应用程序属性文件中处理


因此,您需要将SpEL移动到
@Value
注释,但可以通过YAML为其提供值。

我正在寻找相同的东西。您是否找到了在YAML文件中使用SpEL调用静态方法的方法?