- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试在 NiFi 安装中安装自定义 NAR Controller 服务包,但在启动过程中出现此错误。它的行为就像无法从 nifi-record-serialization-service-api
中找到 RecordReaderFactory
类,即使它作为依赖项包含在内:
<dependency>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-record-serialization-service-api</artifactId>
<version>1.9.0</version>
</dependency>
这是该项目: https://github.com/adamfisher/nifi-zonefile-record-serialization-service
运行 maven install
成功构建 NAR。只是当我启动NiFi时,它给出了这个错误。我很确定这是 Maven POM 配置问题。我只是不太使用 Java,希望有人能解释一下为什么它找不到它需要的依赖类?
nifi-app.log:
2019-03-02 15:22:15,245 INFO [main] org.apache.nifi.web.server.JettyServer Loading WAR: D:\nifi\NIFI-1~2.0\.\work\nar\framework\nifi-framework-nar-1.9.0.nar-unpacked\NAR-INF\bundled-dependencies\nifi-web-error-1.9.0.war with context path set to /
2019-03-02 15:22:15,261 INFO [main] org.apache.nifi.web.server.JettyServer Running in HTTP mode; host headers not restricted
2019-03-02 15:22:16,386 ERROR [main] org.apache.nifi.NiFi Failure to launch NiFi due to java.lang.NoClassDefFoundError: org/apache/nifi/serialization/RecordReaderFactory
java.lang.NoClassDefFoundError: org/apache/nifi/serialization/RecordReaderFactory
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:370)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
at org.apache.nifi.nar.StandardExtensionDiscoveringManager.loadExtensions(StandardExtensionDiscoveringManager.java:152)
at org.apache.nifi.nar.StandardExtensionDiscoveringManager.discoverExtensions(StandardExtensionDiscoveringManager.java:127)
at org.apache.nifi.nar.StandardExtensionDiscoveringManager.discoverExtensions(StandardExtensionDiscoveringManager.java:113)
at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:925)
at org.apache.nifi.NiFi.<init>(NiFi.java:158)
at org.apache.nifi.NiFi.<init>(NiFi.java:72)
at org.apache.nifi.NiFi.main(NiFi.java:297)
Caused by: java.lang.ClassNotFoundException: org.apache.nifi.serialization.RecordReaderFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 23 common frames omitted
2019-03-02 15:22:16,387 INFO [Thread-1] org.apache.nifi.NiFi Initiating shutdown of Jetty web server...
2019-03-02 15:22:16,387 INFO [Thread-1] org.apache.nifi.NiFi Jetty web server shutdown completed (nicely or otherwise).
最佳答案
NAR 依赖项在运行时用于创建父类加载器链。所以在你的例子中你有
nifi-zonefile-record-serialization-service-nar ->(取决于)
nifi-zonefile-record-serialization-service-api-nar ->(取决于)
nifi-标准-服务-api-nar
在运行的应用程序中,当它从服务 NAR 实例化记录读取器实例时,它需要加载实现来自服务 API NAR 的接口(interface),然后需要加载来自服务 API NAR 的 RecordReader 接口(interface)标准服务 API NAR。
关于java - Apache NiFi 自定义 NAR 启动期间出现 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54963492/
我在 docker 中运行 NiFi,所有相关目录都安装为卷。我正在尝试修改 nifi.properties 文件中的一些设置,特别是添加自定义属性文件。但是,当我重新启动 NiFi 时,某些属性会恢
我们有多个团队 nifi 应用程序在同一台 nifi 机器上运行...有什么方法可以记录特定于我的应用程序的日志吗?此外,默认情况下 nifi-app.log 文件很难跟踪问题,公告板仅显示 5 分钟
有了这个功能,现在有两个执行引擎---无状态和有状态,但我不确定它们分别适合哪些场景? 当我想方便地更新一个或多个参数时,使用steteless执行引擎和命令行?如果我需要查看流程状态,在Nifi U
这个问题说明了一切。我怎样才能做以下事情之一: 如何限制在集群范围内为一个处理器运行的并发任务数? 我运行的节点是否有任何唯一的短 ID?我可以使用这些 ID 附加到要加载的数据库表名(请参阅下面的详
我在 HDF 2.1.1 的集群模式下使用 NIFI 1.1.0,并且禁用了数据来源,知道如何启用它吗? 在我的独立版本中它是默认启用的。 最佳答案 您的独立实例和集群之间的主要区别在于您的集群是安全
我正在尝试将一个非常简单的多部分表单发布到 api。我在 apache Nifi 中看不到任何这样做的方法,因为它似乎只有一个表单数据输入。在这里和 Nifi 论坛上似乎有很多关于此的现有问题,但没有
随着流程在开发、测试和生产阶段的进展,我们正在努力找出更新处理器配置的最佳方法。当流部署到特定环境时,我们真的希望避免在处理器中操纵主机、端口等引用。至少在我们的例子中,我们将有不同的主机用于 Ela
我对 Nifi 及其功能以及它的适当用例有疑问。 我读过 Nifi 的真正目标是创建一个允许基于流的处理的空间。在玩弄 Nifi 之后,我也开始意识到它能够以对我有用的方式对数据进行建模/塑造。 Ni
我们有多个(50 多个)nifi 流,它们基本上都做同样的事情:从数据库中提取一些数据,将一些列附加到 parquet 并上传到 hdfs。它们仅在细节上有所不同,例如要运行的 sql 查询或它们在
我一直在尝试 google 和搜索堆栈以寻找答案,但一直找不到。 使用 NiFi,是否可以在之前的作业失败时停止进程? 我们有需要处理的用户数据,但数据是按顺序构造的,因此如果作业失败,我们需要停止运
我正在从事一个大量使用 Apache NiFi v1.10.0 的项目。我厌倦了点击数百个流程组来应用基本相同的小修复。 我最近发现了远程进程组,我想知道是否有办法将 NiFi 实例连接到自身并以这种
我使用的是 Nifi 0.4.1 版本。我正在编写自定义代码以将 CSV 转换为 avro 格式。我已经创建了类文件并能够生成 nar 文件。将 nar 文件放在 lib 目录中并重新启动 nifi
我正在尝试重新启动 NiFi 并出现以下异常。 2016-04-22 09:27:30,672 WARN [main] org.apache.nifi.web.server.JettyServer F
根据我在使用 NiFi 构建一些数据库摄取 PoC 后的理解,整个数据流作为流文件流运行。并且在任何特定时间,执行控制可以同时在一个或多个处理器上。 所以我真的很困惑如何针对任何故障调试复杂的数据流。
我想在我的 Nifi 处理器中引用一个环境变量(一个 linux 环境变量)。我尝试通过直接在处理器属性中引用 ${MY_VARIABLE_NAME} 来使用表达式语言。但这似乎不起作用。这可能吗?如
我是 nifi 的新手,我试图了解(因为它看起来很多基于 GUI)是否有一种方法可以在 Nifi 上自动缩放,以及如何使用 xml Nifi 模板并将其部署到集群。 本质上,我们试图做的是使用 Nif
我正在使用 Apache NiFi 来摄取和预处理一些 CSV 文件,但是在长时间运行时,它总是失败。错误总是一样的: FlowFile Repository failed to update 在日志
我正在为我的数据流开发新的 Nifi 处理器。我在 eclipse 中进行代码更改,创建新的 .nar 文件并将其复制到 Nifi lib 以进行测试。 在 nar 更新中,Nifi 需要重新启动,这
在 NiFi 中,存在从 MQTT(ConsumeMQTT)消费并发布到 HDFS 路径(PutHDFS)的数据流。我需要在将消耗的数据推送到 HDFS 路径之前引入 60 分钟的延迟。发现 Cont
我是 apache NIFI 的新手。我有点想知道保存按钮在哪里。我尝试了我在 youtube 上看到的教程中的示例。我想保存我创建的所有处理器以供将来引用。我没有看到任何保存按钮。以后可以保存我的工
我是一名优秀的程序员,十分优秀!