首页 > 解决方案 > 在 camunda dmn 的规则表的输出块中编写代码时如何在 groovy 中转义 $ 符号

问题描述

我必须在输出块中的 Camunda DMN 中编写 perl 脚本

由于 perl 脚本使用 $ 符号来定义标量。同时,用 Groovy 编写的 Camunda 的 DMN 将尝试解析 $ 符号,但我不希望它被解析,因为我希望它按原样存在,以便 perl 将其理解为标量

那么如何在 Camunda 的 DMN 中转义 $ 符号。

我试过 \$ 和 \$ 但没有用。

execPerl(profile, """ #Test . $sum=0;    print "$sum";""", logStd, logErr);

我希望 camunda 不解决 $sum。因为我将它作为 perl 命令传递

标签: groovycamundacamunda-modeler

解决方案


我不清楚execPerl命令及其参数,但是如果您想获得一个字符串结果,其值execPerl(profile, """ #Test . $sum=0; print "$sum";""", logStd, logErr);来自 DMN 的输出,我认为您可以尝试"execPerl(profile, \"\"\"#Test . $sum=0; print \"$sum\");\"\"\", logStd, logErr);". 我不认为有什么关于如何逃脱的$

有一段DMN的xml代码供大家参考:

<outputEntry id="LiteralExpression_01gq7wg">
      <text>"execPerl(profile, \"\"\"#Test . $sum=0;    print \"$sum\");\"\"\", logStd, logErr);"</text>
</outputEntry>

推荐阅读