Spring ResourceBundleMessageSource 没有从 jar 中加载 属性 文件,而 ClassPathResource 可以

Spring ResourceBundleMessageSource is not loading a property file from a jar while ClassPathResource can

我正在尝试从 jar 文件加载 message.properties 文件,但找不到该文件(我已经尝试了几个小时)。

<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basenames">
        <list>
            <value>messages/messages</value>
            <value>classpath:org/common/messages/messages</value>
        </list>
    </property>
</bean>

但是找不到:

[org.springframework.context.support.ResourceBundleMessageSource] (http-/0:0:0:0:0:0:0:0:8080-5) ResourceBundle [classpath:org/common/messages/messages] not found for MessageSource: Can't find bundle for base name classpath:org/common/messages/messages, locale en_US

我尝试了以下方法,它确实加载了文件,我认为这意味着文件在类路径中

ClassPathResource cpr = new ClassPathResource("org/common/messages/messages.properties");

有什么区别?

我是 运行 这个 JBoss。

试试这个示例,来自这个 POST - Spring UTF-8 message resource from external jar proglem

<bean id="propertiesMessageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basename" value="classpath:com/mypackage/i18n/messages" />