context:如果我们在src / test下使用属性文件,则property-placeholder无法正常工作

时间:2015-06-29 00:46:11

标签: spring maven testing properties-file

我正在使用属性文件在spring中配置数据源:

<bean id="mydataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
        destroy-method="close">
        <property name="driverClass" value="${database.driver}" />
        <property name="jdbcUrl" value="${database.url}" />
        <property name="user" value="${database.username}" />
        <property name="password" value="${database.password}" />
         <property name="initialPoolSize" value="${database.initialpoolsize}" 
            />
         <property name="minPoolSize" value="${database.minpoolsize}" /> 
         <property name="maxPoolSize" value="${database.maxpoolsize}" /> 

    </bean>

以下是spring中该文件的配置

<context:property-placeholder location="classpath*:database.properties" />

这个属性文件在src / test / config /文件夹下,当我运行测试时它给了我这个错误:

java.lang.IllegalArgumentException: Could not resolve placeholder 'database.driver' in string value "${database.driver}"

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

放置在src/main/resources中的资源可用于运行时类路径,因为它们会被资源插件复制到目标/类,如果您希望属性文件特定于测试类,那么它应放在{{1 }}

如果您想将其置于src/test/resources

src/test/config