velocity 引擎初始化报错,velocity.log禁止访问

本文介绍了解决在使用Velocity模板引擎时遇到的初始化日志问题的方法。通过配置properties文件或在代码中设置属性,可以指定日志系统的实现类及类别,确保Velocity正确输出日志。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Failed to initialize an instance of org.apache.velocity.runtime.log.Log4JLogChute with the current runtime configuration.

stackOverflow 上有一个相似的问题,我也遇到这个问题了
其中一个解决方案适合我

原文链接

解决方案:
如果项目有配置velocity.properties
在配置中加入以下K-V键值对

runtime.log.logsystem.class=org.apache.velocity.runtime.log.SimpleLog4JLogSystem
runtime.log.logsystem.log4j.category=velocity
runtime.log.logsystem.log4j.logger=velocity

如果没有此配置文件
则在初始化velocity引擎的时候加入这些键值对配置

VelocityEngine engine = new VelocityEngine();

Properties props = new Properties();
props.put("runtime.log.logsystem.class", "org.apache.velocity.runtime.log.SimpleLog4JLogSystem");
props.put("runtime.log.logsystem.log4j.category", "velocity");
props.put("runtime.log.logsystem.log4j.logger", "velocity");

engine.init(props);

解释说明:

velocity 引擎启动之后,其尝试将日志文件写入tomcat所在目录文件中去,所以你可以强制将日志写入tomcat标准日志中去,要做到这样就是以上所配置的属性
tomcat服务器启动之后,只要在之后操作中启动velocity引擎,就会看到其相关日志输出,本有velocity.properties配置文件

这里写图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值