5

我正在尝试编写一些 Junit 测试来测试我们应用程序中的旧类。该代码正在尝试加载 ResourceBundle(用于翻译)但失败。我猜这个问题与类路径有关,但我无法弄清楚。

代码在 /src 中,我的测试在 /test 中。ResourceBundles 被加载给定一个相对于 /src 的基本名称,比如“foo/bar/baz”。

我的测试使用与应用程序本身相同的类路径,所以我不明白为什么它找不到捆绑包。

有什么想法吗?

4

2 回答 2

8

资源不是从源文件夹而是从类目录解析的。您的资源文件是否已复制到输出文件夹(bin、目标/类等)?如果没有,您的课程将找不到它们。

于 2010-09-16T13:52:08.513 回答
8

如果您使用的是 maven,您通常希望将所有类型的属性文件和资源包放在一个名为src/main/resources/.

如果你想覆盖单元测试中的值,那么你可以添加一个重复的道具。src/test/resources源文件夹中的文件。

于 2012-11-19T10:01:00.087 回答