【发布时间】:2015-10-21 01:43:59
【问题描述】:
由于我们为不同的构建和部署使用不同的 application.properties 文件(例如,对于不同类型的开发人员和测试环境,除了部署到 Prod 之外),我希望能够更改哪个 init-method 是在 Spring 的 application-context.xml 中为 Flyway bean 配置。我想做这样的事情:
<context:property-placeholder location="classpath:application.properties,classpath:application-instance.properties"/>
<bean id="flyway" class="org.flywaydb.core.Flyway" init-method="${flyway.database.init.method}">
<property name="baselineOnMigrate" value="true" />
<property name="locations" value="classpath:/db-migrations/sql/" />
<property name="dataSource" ref="dataSource" />
</bean>
但即使我在 XML 配置的其他占位符中使用此 application.properties 文件,我也会收到此错误:
.BeanDefinitionValidationException:在名为“flyway”的 bean 上找不到名为“${flyway.database.init.method}”的初始化方法
【问题讨论】:
-
你用的是什么版本的spring?