为什么我的 NiFi Nar 没有出现在处理器列表中?

Why doesn't my NiFi Nar show up in the processor list?

刚刚根据教程制作了我的第一个 NAR,将其放入 /lib 文件并重新启动 NiFi。处理器在日志中显示为已加载,但未显示在处理器列表中。有什么想法吗?

教程:http://www.nifi.rocks/developing-a-custom-apache-nifi-processor-json/

        @SideEffectFree
        @Tags({"JSON", "NIFI ROCKS"})
        @CapabilityDescription("Fetch value from json path.")
        public class JsonProcessor extends AbstractProcessor {
           ...
        }

编辑: 我在日志中看到两行:

2017-07-06 19:34:06,200 INFO [main] org.apache.nifi.nar.NarClassLoaders Loaded NAR file: C:\UserApps\NIFI-1~1.0\.\work\nar\extensions\examples-1.0-SNAPSHOT.nar-unpacked as class loader org.apache.nifi.nar.NarClassLoader[.\work\nar\extensions\examples-1.0-SNAPSHOT.nar-unpacked]

列表中的处理器应该叫什么? Json 处理器?

编辑:

尝试将 pom 中的 <nifi.version>1.3.0</nifi.version> 从 1.2.0 更改为 1.3.0。不开心。

因此,除了编写程序之外,您还必须放置一个名为

的文件
org.apache.nifi.processor.Processor

在您的项目中让它显示出来。我怀疑 NiFi 会扫描带有注释的 类 但遗憾的是,它不会。可能是一些安全问题。

上面的教程中确实有这个。 "Browsing"又抓到我了!

我还使用本教程创建了一个客户处理器。我遇到的问题是我混淆了 ./lib 目录。

当您启动 Apache Nifi 时,您会注意到日志开头的以下内容:

Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
NiFi home: /usr/local/Cellar/nifi/1.6.0/libexec

确认 NAR 文件是 $NIFI_HOME/libexec/lib 文件夹,在我的例子中是 /usr/local/Cellar/nifi/1.6.0/libexec/lib

希望对您有所帮助

注意:我 运行 Apache Nifi 在 Mac 上,日志在另一个 OS

上可能不同