【问题标题】:Can you prevent StringTemplate output to stderr?你能阻止 StringTemplate 输出到标准错误吗?
【发布时间】:2014-02-26 01:24:34
【问题描述】:

我目前正在使用以下内容通过 StringTemplate 输出到 servlet:

(ST)page.render();

当我这样做时,StringTemplate 会向 Stderr 打印警告;用无用的警告填充日志文件并不理想。

如果我正确理解文档,以下是否会解决此问题:

STWriter out = new MyCustomWriter(response.getWriter());
page.write((STWriter)out, (STErrorListener)myListener);

顺便说一句,这样做是否可以省去在内存中构建一整页字符串的麻烦?

【问题讨论】:

  • 这是一个问题还是确认文档是否正确?
  • 您是否尝试过修改模板以更正警告?
  • @TheANTLRGuy,是的,这是一个问题。我将编辑主题。
  • @280Z28,这是我无法摆脱的警告。 (至少我看不到)

标签: java antlr antlr4 stringtemplate stringtemplate-4


【解决方案1】:

我花了一些时间来挖掘 javadoc 并弄乱代码,以下似乎完全抑制了错误:

page.write(new NoIndentWriter(response.getWriter()), new ErrorBuffer());

ErrorBuffer 只是收集所有警告,然后我可以忽略它们,或者在需要时进行处理。

(我应该发布一个单独的问题,说明是否可以阻止此警告,但现在可行)

【讨论】:

  • 这是正确的解决方案。我们会生成错误,您可以随意忽略或报告您想要的错误。
猜你喜欢
  • 2017-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多