java - -Dspring.profiles.active 在条件下无法识别

标签 java spring spring-boot spring-el system-properties

我已将 -Dspring.profiles.active 作为系统属性传递:

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="locations">
    <list>
      <value>#{'dev' or 'sit' or 'qa'.equals('${spring.profiles.active}')  ? 'classpath:process${spring.profiles.active}.properties' : 'classpath:env/cfg/process-${spring.profiles.active}.properties'}
      </value>
    </list>
  </property>
</bean>

如果我在 spring.profiles.active 中传递dev,条件应该会通过,但实际上失败了。

但它已通过名为 process-dev.propertiesProperties 成功更新。

有人可以指出我缺少什么吗?

最佳答案

您应该将其更改为 'dev'.equals('${spring.profiles.active}') 或 'sit'.equals('${spring.profiles.active}') 或 'qa' .equals('${spring.profiles.active}')

关于java - -Dspring.profiles.active 在条件下无法识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53443073/

相关文章:

java - Java中的温度转换代码无法运行?

java - 从字节码解析类名

java - Spring Boot - Tiles 问题

java - Spring - 如何将 JSP 表单中的值与数据库中的值进行比较? (服务+DAO)

java - 如何安排有延迟的任务

java - 使用 EnvironmentPostProcessor 的 Spring Boot : Attempting to override application. 属性

java - Spring 执行器自定义指标(平均、最小、最大响应时间)

java - 确保标题在 JOptionPane 上完全可见

java - 在 Java 中打开大型现有 Excel 文档

spring - 如何使用 hibernate 和 spring 在 Tomcat 7 中配置 MySQL 数据源?