1

有一个 Web 应用程序,它的某些功能在 GWT 中实现。通过 Ant 脚本在 Eclipse 中编译 gwt 代码时出现异常。

log4j:ERROR setFile(null,true) call failed.
FileNotFoundException: \logs\App.log (The system cannot find the path specified)

如果我忽略上述异常,我的应用程序可以正常工作并正确更新设置文件路径下 App.log 文件中的日志。但是由于这个异常 gwt 代码 id 没有被编译。

在 log4j.properties 文件中,设置了下面提到的路径:

log4j.appender.R.File=${catalina.base}/logs/App.log

如果我将此路径更改为绝对路径(如 D:\App.log),则它运行得很好。目前我在 Windows 上运行构建,稍后战争将部署在 Linux 上。

我怎样才能让它用相对路径编译?是否缺少任何配置?

4

1 回答 1

1

如果catalina.base未定义系统属性,则路径变为绝对路径/logs/App.log,这就是错误消息中的内容。

尝试:

  • log4j.properties编译您的应用程序时从类路径中删除您的文件
  • 编译应用程序时,将catalina.base系统属性设置为某个现有路径(logs可能需要子文件夹)。
于 2013-06-19T15:07:35.753 回答