2015-10-19 96 views
0

我的下一個項目結構Spring應用程序上下文:無法加載從測試

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"); 

而且works.And如果使用

@ContextConfiguration(locations = {"classpath:application-context.xml"}) 

裏面的測試 - 它的工作原理。但是,如果我用:

@ContextConfiguration(locations = {"classpath:application-context-test.xml"}) 

我得到異常:

java.lang.IllegalStateException: Failed to load ApplicationContext 

任何想法,爲什麼?也許XML文件有問題?

+0

/測試不得在您的類路徑中。 –

+0

你是什麼意思? – ovod

+0

你可以在開頭添加一個'/'嗎? '類路徑:/應用程序上下文test.xml'。這通常會解決類似的問題....我認爲這是一個很好的做法,因爲它縮小了在哪裏找到資源。 – Augusto

回答

0

確保您的主目錄和測試目錄都設置爲eclipse中的源目錄。您可以從ui執行此操作,但也可以在應用程序源的根目錄下打開隱藏的.classpath文件。開始的時候看起來應該像你之前看到其中的路徑匹配你的文件結構:

​​

如果確實如此,測試應該工作。如果不是,他們不會。

您可以通過右鍵單擊src/main/resources目錄並選擇Build Path >> Add to Build Path來從UI執行此操作。您的包資源管理器應該與上面的每個源目錄一樣。 enter image description here

+0

在哪裏可以通過ui進行編輯? – ovod

相關問題