有没有办法在传统的代码调试意义上调试Velocity模板?

Pet*_*ter 11 debugging templates velocity vtl

我们在Web应用程序中大量使用Velocity.虽然很容易调试Java方面并确保正确填充Velocity Context,但是能够在合并步骤中逐步解析VTL,设置断点等是非常有价值的.是否有任何工具或者IDE/IDE插件可以通过VTL(Velocity Template Language)实现这种功能吗?

DJ.*_*DJ. 5

我还没有找到。我能得到的最接近的方法是破解一个日志记录框架,以打印出所需的信息。

您要做的是:

  1. 使用日志记录方法创建一个返回布尔值的类。
  2. 将对象注入速度上下文
  3. 在速度模板内部,您可以使用以下命令调用测井方法 #if($logger.log($data)) #end


scu*_*ffe 3

可能有吗?但我发现,如果所有内容都放入一个特殊的地图中,即放入上下文中,则有效。因此,您可以在渲染时将这个特殊地图的全部内容回显到屏幕(无需知道键)...从而指示上下文中任何点的任何给定项目的确切值。它并非万无一失,但 VTL 似乎只适用于“快速但肮脏”的东西。