如何使用SimpleTemplateEngine或GStringTemplateEngine处理大于 65535 个字符的模板?
我收到以下错误:
groovy.lang.GroovyRuntimeException:无法解析模板脚本(您的模板可能包含错误或尝试使用当前不支持的表达式):启动失败:SimpleTemplateScript1.groovy:5614:字符串太长。给定的字符串长度为 198495 个 Unicode 代码单元,但最多允许 65535 个。
我正在使用以下代码构建模板:
def templateEngine = new SimpleTemplateEngine()
def binding = [:]
templateEngine
.createTemplate(new FileReader("input.txt))
.make(binding)
.writeTo(new FileWriter(new File("output.txt")))
我发现JIRA 3487与此问题相关:GStringTemplateEngine failed to work with >64K strings。
我曾考虑过对输入进行分块,但这会带来其自身的复杂性,例如确保不会在表达式中间中断。
我将不胜感激任何其他建议。