我有下一个项目结构:
src/
main/
java/
DAO/Dao classes
data/data classes
resources/
application-context.xml
test/
java/
data/ Test files
resources/
application-context-test.xml
当我在测试之外加载上下文时,我使用:
ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
并且它有效。如果使用
@ContextConfiguration(locations = {"classpath:application-context.xml"})
内部测试 - 它有效。但如果我用于:
@ContextConfiguration(locations = {"classpath:application-context-test.xml"})
我有例外:
java.lang.IllegalStateException: Failed to load ApplicationContext
任何想法为什么?也许XML文件出了问题?
答案 0 :(得分:0)
确保在eclipse中将main目录和测试目录都设置为源目录。您可以从ui执行此操作,但您也可以在应用程序源的根目录中打开隐藏的.classpath文件。开头应该看起来像你之前看到的路径与文件结构匹配的东西:
itération: 6
[ 1.34250751 1.22131969 0.61147827 0.72320522 1.18101783 0.2767469
1.87170912 0.68726641 1.44933786 1.25179186]
[False False False False False False True True True True]
[3 6 7 8 9]
如果确实如此,测试应该有效。如果不是,他们就不会赢。
您可以通过右键单击src / main / resources目录并选择Build Path>>来从UI执行此操作。添加到构建路径。您的包浏览器应该与顶部的每个源目录类似。