如何使ScriptEventHookProvider工作?

问题描述

我通过Docker部署了Nifi和Nifi注册表。我正在尝试集成ScriptEventHookProvider。 https://nifi.apache.org/docs/nifi-registry-docs/html/administration-guide.html#scripteventhookprovider

这是我的provider.xml:

enter image description here

引用的脚本文件 notify.sh 存在并放置在注册表容器的内部:

enter image description here

我尝试了相对路径和绝对路径,但没有任何帮助-我得到了错误

java.io.IOException: Cannot run program "/opt/nifi-registry/nifi-registry-current/registry_hooks/notify.sh": error=2,No such file or directory

enter image description here

所以我的问题是,如何正确设置脚本路径和工作目录?为什么我们都需要它们?

解决方法

问题在.sh文件中:它需要LF结尾。我有CRLF。因此,我使用VS代码转换了行尾,现在一切正常。

enter image description here