使用ResourceBundle进行国际化的Java SE Maven项目

时间:2013-09-12 01:01:22

标签: java maven localization

我正在开发一个必须本地化的Swing应用程序。

为此目的,我正在使用resourceBundle。从IDE运行应用程序时,它工作正常。但是当我使用maven生成jar时,应用程序正常启动但国际化停止工作。没有任何例外,我已经做了很多变化来解决这个问题;我甚至创建了一个继承自java.util.ResourceBundle.Control的类。我实现的唯一目标是将属性文件放在包外(我将它放入桌面进行测试)。然后我尝试通过指定路径by new File(".").getAbsolutePath()来使用相同的方法。

通过从Eclipse运行它仍然可以继续工作,但是当我尝试生成jar并执行它时,它会抛出异常并且应用程序无法启动。

1 个答案:

答案 0 :(得分:4)

如果将属性文件放在Java代码旁边的src/main/java中,Maven可能不会选择它。

规范位置为src/main/resources(下面的包结构与您现在的代码中的重复一样)。