在Groovy源文件中缩进heredoc

时间:2016-06-20 04:59:04

标签: groovy

我想在使用heredoc时保留源文件中的预期缩进,但同时,此处文档的内容在渲染时不会缩进。例如。以下

// myscript.groovy
if ( someCondition ) {
  println """
  some multi-line
  content
  """
}

将打印缩进的输出,例如

$ groovy myscript.groovy

    some multi-line
    content

但我希望只打印未缩进的内容,如下所示

$ groovy myscript.groovy

some multi-line
content

如何在Groovy中实现这一目标?

Bash有<<-STRING heredoc定义来完成此任务,但我找不到任何与Groovy相似的内容。

1 个答案:

答案 0 :(得分:5)

你需要stripMargin

if ( someCondition ) {
  println """
            |some multi-line
            |content
            |""". stripMargin()
}