【问题标题】:Can't find bundle for base name that doesn't solve with similar questions找不到无法解决类似问题的基本名称的捆绑包
【发布时间】:2015-07-08 19:23:15
【问题描述】:

我应该设计一个本地化的应用程序,但最后这个错误返回:

Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name messages, locale fa

一段代码:

 ResourceBundle bundle =
            ResourceBundle.getBundle("messages",new Locale("fa"));

和我的项目结构中的图像(我用类似的错误测试了它的 jsp 页面现在我正在使用 main 方法 (TestCalender.java) 的类中进行测试):


编辑:

我看到了类似的问题并测试了他们的答案,但在我的错误中没有检测到任何变化!

【问题讨论】:

  • 根据对类似问题的回答,它在类路径的根目录中寻找捆绑包,而不是捆绑包所在的位置。
  • Unlike.Nope!我把捆绑包放在几个地方,也是 calsspatp 的根目录,但没有变化!!!
  • 我通过将包复制到目标目录来解决这个问题!!!!我不知道他们为什么不自动复制到这里!! @BSMP 你知道吗?
  • 我不知道为什么这不是自动的,但您可以将其添加为问题的答案,以便其他人可以看到有解决方案。

标签: java localization


【解决方案1】:

我发现:

因为我使用的是 Maven,一些配置应该添加到 pom.xml 文件中,以便将资源添加到 target 目录。

这就是我所做的:

     <plugins>
        <!--Some plugins omitted >
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.6</version>
        </plugin>
    </plugins>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include> **/*.properties</include>
            </includes>
        </resource>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include> **/*.xml</include>
            </includes>
        </resource>
    </resources>

【讨论】:

  • T.V.B 💕
猜你喜欢
  • 2011-01-06
  • 2016-05-02
  • 2014-03-21
  • 2016-06-13
  • 1970-01-01
  • 2021-10-31
  • 1970-01-01
  • 2012-10-10
相关资源
最近更新 更多