无法从 junit 加载属性 spring

Failed to load properties from junit spring

我有一个项目,当通过 java -jar 命令 运行 时它工作得很好,但是如果我通过 junit 运行 它无法加载 属性 使用 spring 加载的文件 context.Below 是目录结构

/src
 /main
  /java
  /resources
    /config
      /export
        export.properties
    context.xml
    startJob.bat
 test
  java
    execution
     Test1

context.xml 包含以下内容:

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>file:config/export/export.properties</value>
            </list>
         </property>

我的测试class如下:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:context.xml"})
public class Test1 {

@Autowired
Export export;
    @org.junit.Test
    public void test2() {
        export.report();

当我运行上面的junit测试用例时, 我得到以下错误:

Caused by: java.io.FileNotFoundException: config\export\export.properties (The system cannot find the path specified).

我什至尝试处理从 src/main/resources 到 src/test/resources 的所有资源,但它仍然失败并出现相同的错误。 我相信这是每个​​人都会使用的东西,而且一定非常简单......

编辑 1 我创建了一个单独的 test-context.xml 并将其放在源代码中并修改它以使用 classpath:

加载文件
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:config/export/export.properties</value>
            </list>
         </property>.

此后 spring 能够加载属性,但在进一步处理时,我在记录器中有以下代码:DOMConfigurator.configure("config/export/export_log.xml") 失败并显示 "java.io.FileNotFoundException: H:\workspaces\export\job\config/export/export_log.xml". 它如何选择这条路径?

我能够通过如下配置日志文件来解决问题:

DOMConfigurator.configure(JobLogger.class.getClassLoader().getResource("config/export/export_log.xml"))