找不到外部jar的Spring配置* .xml文件

时间:2017-11-11 10:04:47

标签: java xml spring classpath filenotfoundexception

我有一个jar x,它有一个像

这样的类
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
@Configuration
@ImportResource({ "/WEB-INF/assembly/appconfig.xml" })
public class DSPPlatformCommonSiteDefConfig {}

现在完全在另一个项目中,我已将此jar添加为依赖项。

导入此类,如:

@Configuration
@Import(DSPPlatformCommonSiteDefConfig.class)
public class ApplicationConfiguration {

}

基本上,我在项目中使用jar的Spring配置文件。

但是当我运行我的应用程序时,我收到了这个错误:

消息:java.io.FileNotFoundException:无法打开类路径资源[WEB-INF / assembly / appconfig.xml],因为它不存在 org.springframework.beans.factory.BeanDefinitionStoreException:IOException从类路径资源[WEB-INF / assembly / appconfig.xml]解析XML文档;嵌套异常是java.io.FileNotFoundException:无法打开类路径资源[WEB-INF / assembly / appconfig.xml],因为它不存在

我不明白它为什么要查看类路径。即使它确实如此,jar也在我的类路径中。

1 个答案:

答案 0 :(得分:0)

您的问题似乎出现在@ImportResource注释中location的路径声明中。路径应该是文件的URI,该URI不能是您声明的那个。

示例可以是以下路径:

@ImportResource(locations={ "file:com/yourProjectName/assembly/appconfig.xml" })