我正在尝试运行一些需要在Intellij下读取spring xml配置的单元测试用例,但是Intellij失败并出现以下错误。
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [test.xml]; nested exception is java.io.FileNotFoundException: class path resource [test.xml] cannot be opened because it does not exist
在Intellij下,我的文件夹结构为:
src/main/java
src/main/test
src/main/spring
和text.xml文件位于src / main / spring下
加载配置文件的相关Java代码为:
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("test.xml")
我搜索了几篇文章,并尝试了以下方法:
1) marked src/main/spring folder as "sources" or "resources".
2) added src/main/spring as a module under project structure.
但不幸的是,它们都不起作用。
build.gradle设置中的我的sourceSets是:
sourceSets {
main {
java {
srcDir 'src/main/java'
}
proto {
// In addition to the default "src/main/proto"
srcDir "src/main/proto"
}
}
test {
java {
srcDir 'src/main/test'
}
proto {
srcDir "src/main/proto"
}
}
}
我是Gradle的新手,希望有人能给我提示。真的很感激!
答案 0 :(得分:3)
您需要将src/main/spring
添加到resources
文件中的build.gradle
,请参阅related answer。
sourceSets {
main {
java {
srcDir 'src/main/java'
}
...
resources {
srcDir 'src/main/spring'
}
...
}
}