簡體   English   中英

找不到Spring XML上下文文件

[英]Spring xml context file not found

我正在嘗試按照本教程學習Spring Framework:

http://www.tutorialspoint.com/spring/spring_hello_world_example.htm

我用以下方法創建了一個新的Maven項目:

<dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-context</artifactId>
     <version>3.2.5.RELEASE</version>
 </dependency>

不是Web應用程序。 我想創建一個簡單的Java應用程序,我的主要方法是:

ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
obj.getMessage();

如果我沒有記錯的話,ClassPathXmlApplicationContext構造函數將在src / main / resources文件夾中查找文件。 但是,當我執行該應用程序時,出現了異常“找不到文件bean.xml”。 我嘗試使用到bean.xml文件src / main / resources / beans.xml的完整路由以及大量路由。

當我使用此代碼檢查文件是否存在時,它說存在。

File f = new File("src/main/resources/beans.xml");
System.out.println("Exist test: " + f.exists());

我不明白 有什么幫助嗎?

我想問的另一件事是我是否需要使用xml來獲取依賴注入。 我可以在不使用XML定義的情況下使用spring框架嗎?

我已經看到了諸如@Autowired之類的Annotations,但我也無法使其正常運行。 我想知道是否需要使用xml +注釋的組合。

如果將文件放在類路徑的根目錄中(這就是您要做的),請使用

ApplicationContext context = new ClassPathXmlApplicationContext("/beans.xml");

引用它(開頭是“ /”)。

您不需要XML配置。 看看Spring Framwork參考文檔 5.9基於注釋的容器配置5.12基於Java的容器配置詳細介紹了Java配置。

ClassPathXmlApplicationContext不在/ src / main / resources中查找文件。 它試圖在類路徑(jar文件的“根”)中找到它。

但是,在構建應用程序時,您放置在src / main / resources中的所有內容都會被maven放置在“ root”(在類路徑中)中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM