在Apache Nifi中支持Java作为执行脚本处理器中的语言

时间:2018-07-31 09:37:23

标签: apache-nifi

ExecuteScript处理器目前支持多种语言,例如Python; Groovy; clojure; Lua等。
为什么不允许我用Java编写一些自定义代码?

2 个答案:

答案 0 :(得分:1)

除了其他答案外,我们可以添加基于Janino的Java“脚本引擎”,但是它有很多局限性,因此与仅使用Groovy相比,吸引力不那么大。 Groovy和Java之间有一些区别(数组初始化,直到Java lambda到Groovy 3为止),但是正如其他人所说的那样,它非常接近。

已经说过,一旦NiFi需要Java 9+,我将考虑使用Java 9中的JShell REPL东西将Java添加为脚本语言。

答案 1 :(得分:0)

通常,Java不是“脚本”语言。您可以在JSR-223中了解有关启用脚本语言访问JVM的更多信息。正如daggett指出的那样,您可以使用纯Java编写代码并选择 Groovy 选项,这会将代码编译为相同的JVM字节码。