我最近将一个我正在开发的webapp移动到运行64位Eclipse Helios(Service Release 2)的新机器上,我正在使用Maven插件M2Eclipse。
我已经通过Eclipse部署了本地tomcat安装,一切正常(或多或少),但是我想选择“无需发布服务模块”选项,但是当我选择此选项时,我会收到错误:
log4j:ERROR Could not read configuration file from URL [file:/C:/butterfly/svn/trunk/micro/src/main/webapp/WEB-INF/classes/log4j.properties].
java.io.FileNotFoundException: C:\butterfly\svn\trunk\micro\src\main\webapp\WEB-INF\classes\log4j.properties (The system cannot find the file specified)
log4j.properties文件不在那里,就像在src / main / resources中的生命中的源目录中一样 - 在构建它然后被复制到target / WEB-INF / classes /.../ p>
Eclipse似乎将预期的目标目录与src目录混合在一起,因此找不到它。
我不确定是否仅针对属性文件发生这种情况,或者是否会出现查找所有构建资源的相同问题。
我见过这些问题:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=318449
http://www.eclipse.org/forums/index.php?t=msg&goto=661045&S=25bafd85b11e042c169ecf1752bfa479
但它们似乎略有不同或已经修复(My Helios是上周末的新下载)
任何人都有这种情况或知道如何解决?
答案 0 :(得分:1)
来自here:“没有发布选项的服务模块就是这么说的。网页内容将直接从动态网站项目的”WebContent“文件夹中提供。自定义上下文用于制作项目的依赖项可在Web应用程序的类加载器中找到“。在构建项目之后,我希望eclipse模拟从WEB-INF / classes为每个类/资源文件(包括log4j.properties)提供服务。作为一种解决方法,如何在WebContent中创建“classes”文件夹,在这里复制log4j.properties文件并查看类加载器是否变得满意?