在 Spring 4.3.9下升级 Velocity 1.7.x to Velocity 2.0.x 出现的问题

1: Spring 的 spring-context-support 报错 java.lang.NoClassDefFoundError: org/apache/velocity/runtime/log/CommonsLogLogChute

等待 Spring 升级支持 Velocity 2.0.x 或自己改 Spring 的源码

velocity整个初始化日志过程:

    1. new RuntimeInstance(),属性Log log = new Log(), 默认创建一个HoldingLogChute()做为LogChute,(该LogChute临时记录日志到内存对象上)
    2. RuntimeInstance.init() 进行velocity系统初始化
    3. 顺序调用initializeProperties(), 读取velocity.properties默认配置,合并自定义的properties。
    4. 顺序调用initializeLog() ,调用LogManager.updateLog(),进行Log初始化
    5. LogManager.createLogChute()会首先读取runtime.log.logsystem配置,看看是否有存在自定义的LogChute实例对象,如果有则直接使用,并返回
    6. 在没有对应的LogChute实例对象配置,继续读取runtime.log.logsystem.class,看看似乎否有logsystem的配置,就是前面类图中的一对LogChute,LogSystem的实现类。
  1. 按照顺序,逐一加载LogChute实现类,如果class装载成功,则进行初始化,并返回
    1. LogManager,针对createLogChute,将系统初始时HoldingLogChute记录的内容,输出到新的LogChute上,最后完成了log的初始化

2:更改 Velocity.properties

复制代码
runtime.conversion.handler = none
space.gobbling = bc
相关推荐
fulton几秒前
为什么AI写到20章就开始"复制粘贴"自己?创意扰动机制详解
后端
艺艺生辉1 分钟前
从if-else到策略模式
后端·设计模式
fulton1 分钟前
AI写小说失败的第一原因是什么
后端
fulton2 分钟前
这段文字有AI味"到底怎么判断
后端
fulton5 分钟前
为什么AI写的小说节奏总是崩
后端
fulton6 分钟前
为什么AI写到30章角色就崩人设
后端
fulton7 分钟前
AI写小说每章都要过安检?8级质量门禁详解
后端
fulton10 分钟前
AI写长篇小说为什么30章必崩
后端
fulton10 分钟前
AI写到第30章就"失忆"?15条状态轨详解
后端
fulton10 分钟前
这是核心创意卡最反直觉的地方:5项不可修改的设定,反而让大纲设计变得**更容易**而非更难。 | 维度 | 无约束 | 有5项锚点 | |---|---|
后端