[英]can not load Spring application context from tests
我有下一個項目結構:
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文件有問題?
確保將主目錄和測試目錄都設置為eclipse中的源目錄。 您可以從ui中執行此操作,但也可以在應用程序源的根目錄下打開隱藏的.classpath文件。 開頭應該看起來像您在路徑匹配文件結構之前看到的內容:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="src" path="src/test/java"/>
<classpathentry kind="src" path="src/main/resources"/>
<classpathentry kind="src" path="src/test/resources"/>
.
.
.
</classpath>
如果是這樣,則測試應該可以進行。 如果沒有,他們不會。
您可以通過右鍵單擊src / main / resources目錄並選擇Build Path >> Add to Build Path,從UI中執行此操作。 您的程序包瀏覽器應該看起來像這樣,每個源目錄都在頂部。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.