0

我正在尝试通过以下书籍 Pro Spring3 来学习 Spring3。我在第 4 章,作者解释了 IoC 和 DI。他使用 GenericXmlApplicationContext 来指定配置文件。他执行以下操作:

package com.apress.prospring3.ch4;

import org.springframework.context.support.GenericXmlApplicationContext;

public class UsingSetterInjection {

    public static void main(String[] args) {

        GenericXmlApplicationContext ctx = new GenericXmlApplicationContext();
        //ctx.load("classpath:app-context-xml.xml");
        ctx.load("classpath:app-context-annotation.xml");
        ctx.refresh();      

        MessageRenderer messageRenderer = ctx.getBean("messageRenderer", MessageRenderer.class);
        messageRenderer.render();
    }
}

我的结构是

src/main/resources/app-context-annotation.xml

IOException 从类路径资源 [app-context-annotation.xml] 解析 XML 文档;嵌套异常是 java.io.FileNotFoundException:类路径资源 [app-context-annotation.xml] 无法打开,因为它不存在

4

2 回答 2

1

给出完整的路径,它会像魅力一样工作。

    GenericXmlApplicationContext ctx = new GenericXmlApplicationContext();
    ctx.load("classpath:META-INF/spring/app-context-annotation.xml");
于 2014-07-19T17:54:44.867 回答
0

您可以尝试使用以下行来加载您的 xml 文件吗?

ctx.load("classpath*:app-context-annotation.xml");

我在类路径之后添加了一个*。我认为这应该可以解决您的问题。否则,您需要检查此文件是否存在于应用程序类路径中。

干杯。

于 2012-06-11T05:38:18.407 回答