Spring无法从不同模块的测试包导入应用程序上下文
我有一个Java应用程序,它由两个模块组成,ModuleA和ModuleB 在ModuleB的测试上下文applicationContextB-test.xml(见下文)中,我尝试从ModuleA的测试上下文applicationContextA-test.xml导入bean,如下所示:Spring无法从不同模块的测试包导入应用程序上下文,spring,testing,import,applicationcontext,Spring,Testing,Import,Applicationcontext,我有一个Java应用程序,它由两个模块组成,ModuleA和ModuleB 在ModuleB的测试上下文applicationContextB-test.xml(见下文)中,我尝试从ModuleA的测试上下文applicationContextA-test.xml导入bean,如下所示: <import resource="classpath*:applicationContextA-test.xml"/> 测试源和资源仅在本地可用,它们不是生成的jar文件的一部分,因此对其他项
<import resource="classpath*:applicationContextA-test.xml"/>
测试源和资源仅在本地可用,它们不是生成的jar文件的一部分,因此对其他项目不可用。此限制也适用于同一工作区中的项目。测试中的所有内容仅对其中定义的模块可见。谢谢。这就把事情弄清楚了。现在我将把A的测试配置复制到ModuleB。我想知道如何避免在使用多个子模块时复制应用程序配置。如何将测试上下文放在ModuleA的普通源文件夹中,以便从其他模块中引用它进行测试,并将其从Maven的构建中排除?只需在Maven中创建一个单独的子模块(例如测试基础设施),将资源放在那里,并将该模块作为其他模块中的测试依赖项引用。顺便说一句,您的资源应该位于
src/main/resources
,而不是src/main/java/resources
。听起来像是一个计划。谢谢资源文件夹在我的项目中的正确位置。我编辑了我最初的帖子来反映这一点。
/ModuleA
/src/main/resources/
- applicationContextA.xml
/src/test/resources/
- applicationContextA-test.xml
pom.xml
/ModuleB
/src/main/resources/
- applicationContextB.xml
/src/test/resources/
- applicationContextB-test.xml
pom.xml