我是Maven和Spring的新手。我正在使用Netbeans 7作为我的IDE,并使用Maven设置Spring 3项目。
一切似乎都很顺利,我开始浏览Spring用户指南。但是,在尝试加载我的context.xml文件时,我收到了一个找不到文件的文件。
我有一个位于com.myproject的App类,而context.xml文件位于com.myproject.conf
我在App.java中使用以下代码行来尝试加载context.xml文件:
ApplicationContext context = new ClassPathXmlApplicationContext("context.xml");
但是当我运行应用程序时,它会导致:
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [context.xml]; nested exception is java.io.FileNotFoundException: class path resource [context.xml] cannot be opened because it does not exist
查看NetBeans输出,看起来它还没有找到log4j.properties文件,该文件也位于com.myproject.conf中
我查看了构建过程创建的jar,并且缺少整个com.myproject.conf包,这意味着缺少.xml和.properties。我已经尝试将这些配置文件移动到com.myproject包中,并将它们放在项目的根目录中,不会产生任何不同的结果。
所以我假设我的maven项目没有完全正确设置,或者NetBeans中的设置可能不正确。
答案 0 :(得分:2)
您似乎需要了解Maven项目中的资源(例如XML,位图等)。这些存储在单独的目录中。请参阅here。
答案 1 :(得分:2)
将包裹放入“其他来源”
我对.property文件有同样的问题来管理国际化。 我在Source Packages目录的com.company.app.view.resources中创建它。
当我构建项目然后查看我的 war 文件(目标)时..我没有在/ WEB-INF / classes中找到.property文件/ COM /公司/应用程序/视图/资源
然后我将包放在“其他来源”目录中,它适用于我。