覆盖Junit中jar中的spring配置文件

时间:2013-07-27 18:47:48

标签: java spring

我的项目的一个依赖模块中有bean定义(x1.spring.xml)。

现在我必须编写使用jar中存在的x1.spring.xml文件的Junit。 我想在x1.spring.xml中覆盖一些bean,所以我在test / src中创建了相同的包结构 - >并将文件x1.spring.xml放入我的新修改。

但是当我执行junit时,程序正在拿着一个存在jar但不存在的那个 test / src文件夹。我保持了与jar相同的包结构(认为它将覆盖jar中存在的那个)

1 个答案:

答案 0 :(得分:2)

如果您遵循Maven约定,即${basedir}/src/main/resources${basedir}/src/test/resources,则后一个位置的文件会在类路径中提前放置,因此@SpringJUnit4ClassRunner会先找到测试文件。听起来您没有使用传统目录,在这种情况下请确保您已正确配置resourcestestResources build元素。有关详细信息,请参阅POM reference

如果这是@SpringJUnit4ClassRunner中配置的顶级资源,或者只是调用测试文件以保持简单。