一尘不染

在不发布的情况下服务模块在Helios中不起作用

tomcat

我最近将正在开发的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

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

任何人都经历过或知道如何解决?


阅读 206

收藏
2020-06-16

共1个答案

一尘不染

From
here:
“不发布的服务模块”选项说明了问题。Web内容
将直接从Dynamic Web
Project 的“ WebContent”文件夹中提供。使用定制的上下文可以使项目的依赖关系
在Web应用程序的类加载器中可用。我希望eclipse 在构建项目后能够
模拟从
WEB-INF / classes 提供的每个类/资源文件(包括log4j.properties)。解决方法是,
在WebContent内创建一个“ classes”文件夹,在此处复制log4j.properties文件
,看看类加载器是否感到高兴?

2020-06-16