4

我最近将我一直在开发的 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/..

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

但它们似乎略有不同或已经修复(我的 Helios 是上周末的新下载)

有人遇到过这种情况或知道如何解决吗?

4

1 回答 1

1

这里:“服务模块不发布选项按照它所说的进行。Web 内容将直接从动态 Web 项目的“WebContent”文件夹提供。自定义上下文用于使项目的依赖项在 Web 应用程序的类加载器中可用“ . 我希望 Eclipse 在您构建项目后模拟从 WEB-INF/classes 提供每个类/资源文件(包括 log4j.properties)。作为一种解决方法,如何在 WebContent 中创建一个“类”文件夹,在此处复制 log4j.properties 文件并查看类加载器是否满意?

于 2011-05-08T00:07:48.047 回答