我最近将正在开发的Web应用程序转移到运行 64位Eclipse Helios(服务版本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 /。
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
但它们似乎略有不同或已经修复(“我的太阳神”是 上周末的新下载)
任何人都经历过或知道如何解决?
From here: “不发布的服务模块”选项说明了问题。Web内容 将直接从Dynamic Web Project 的“ WebContent”文件夹中提供。使用定制的上下文可以使项目的依赖关系 在Web应用程序的类加载器中可用。我希望eclipse 在构建项目后能够 模拟从 WEB-INF / classes 提供的每个类/资源文件(包括log4j.properties)。解决方法是, 在WebContent内创建一个“ classes”文件夹,在此处复制log4j.properties文件 ,看看类加载器是否感到高兴?