当项目交叉依赖时,STS无法找到xml资源

时间:2014-07-20 15:22:59

标签: java eclipse spring maven spring-tool-suite

我有2个项目:

  • 项目A及其弹出声明文件a.xml

  • 项目B使用项目A及其弹簧声明文件b.xml

如果我在外部Tomcat中部署项目B一切正常,但在STS内部运行项目B的唯一方法是关闭项目A,否则我收到以下错误:

SEVERE: StandardWrapper.Throwable
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:/a.xml]
Offending resource: ServletContext resource [/WEB-INF/b.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [a.xml]; nested exception is java.io.FileNotFoundException: class path resource [a.xml] cannot be opened because it does not exist
    at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
    at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
    at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76)

在项目B的构建路径中,我在选项卡" Projects"下添加了项目A.在项目B的pom.xml中,我引用了带有范围的项目A"编译"。

关于它为什么会发生以及如何解决的任何想法?

我正在运行STS 3.6.0。

更新: Project A Pom.xml

<groupId>com.mycompany.backend</groupId>
    <artifactId>services</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

Project B Pom.xml

<dependency>
    <groupId>com.mycompany.backend</groupId>
    <artifactId>services</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <scope>compile</scope>
</dependency>

最后,在Project B的Spring配置文件中,项目A的包含完成了:

<import resource="classpath:/a-services-beans.xml"/>

谢谢, 的Alexio

0 个答案:

没有答案