Java 无法从配置XML中的porperties文件中读取值

Java 无法从配置XML中的porperties文件中读取值,java,xml,hibernate,properties,hazelcast,Java,Xml,Hibernate,Properties,Hazelcast,我已经将hazelcast.properties和hazelcast config.xml文件放在classpath中。这是我的目录结构: resources |_ | spring-env | |_ | dev.properties |_ applicationContext-hazelcast.xml 在我的applicationContext-hazelcast.xml中: <context:property-placeholder file-encoding="UTF-8

我已经将hazelcast.properties和hazelcast config.xml文件放在classpath中。这是我的目录结构:

resources
|_
| spring-env
| |_
|   dev.properties
|_
  applicationContext-hazelcast.xml
在我的applicationContext-hazelcast.xml中:

<context:property-placeholder file-encoding="UTF-8" location="classpath:spring-env/dev.properties" /> 
<hz:hazelcast id="instance">
    <hz:config>
        <hz:instance-name>hz_instance</hz:instance-name>
        <hz:group name="dev" password="password"/>
        <hz:network port="${hazelcast.port}" port-auto-increment="false">
            <hz:join>
                <hz:multicast enabled="false"/>
                <hz:tcp-ip enabled="true">
                    <hz:members>${hazelcast.members}</hz:members>
                </hz:tcp-ip>
            </hz:join>              
        </hz:network>
尽管我在dev.properties文件中指定了这些属性:

#hazelcast properties
hazelcast.port = 35701
hazelcast.members = 127.0.0.1
知道为什么它无法从dev.properties文件中找到${hazelcast.port}&${hazelcast.member}属性的值吗


注意:我对hibernate二级缓存使用相同的配置文件&对于我手动配置的缓存映射

如果在系统属性中定义属性,即hazelcast.porthazelcast.members,则该属性将起作用

在启动HazelcastCacheRegionFactory并设置为System.property之前,从您的dev.properties读取这些属性

#hazelcast properties
hazelcast.port = 35701
hazelcast.members = 127.0.0.1