使用PutIgniteCache将FlowFiles写入Ignite缓存遇初始化异常求助
NiFi PutIgniteCache处理器抛出
java.lang.ExceptionInInitializerError错误(新手求助) 我是NiFi和Ignite的纯新手,最近在尝试用PutIgniteCache处理器把FlowFiles流式传输到Ignite缓存中。一开始用的是处理器的默认配置,把Filename作为Ignite缓存条目的标识符,但运行起来直接抛出了java.lang.ExceptionInInitializerError错误。我怀疑是不是遗漏了NiFi或者Ignite的基础配置项,已经给NiFi的bootstrap.conf文件添加了Java 9适配Ignite的参数(对应文件第17-23行),现在附上修改后的配置片段以及nifi-app.log和nifi-bootstrap.log中的报错堆栈信息,恳请有相关经验的大佬帮忙分析下解决方案!
修改后的NiFi bootstrap.conf配置片段(17-23行)
java.arg.17=--add-modules=java.xml.bind java.arg.18=--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED java.arg.19=--add-exports=java.base/sun.nio.ch=ALL-UNNAMED java.arg.20=--add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED java.arg.21=--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED java.arg.22=--add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED java.arg.23=--illegal-access=permit
nifi-app.log报错堆栈信息
java.lang.ExceptionInInitializerError at org.apache.ignite.internal.util.IgniteUtils.<clinit>(IgniteUtils.java:863) at org.apache.ignite.Ignition.start(Ignition.java:353) at org.apache.nifi.processors.ignite.PutIgniteCache.onTrigger(PutIgniteCache.java:157) at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1162) at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:209) at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117) at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.RuntimeException: Failed to resolve default logging implementation at org.apache.ignite.internal.util.IgniteUtils.getGridLogger(IgniteUtils.java:858) at org.apache.ignite.internal.util.IgniteUtils.<clinit>(IgniteUtils.java:860) ... 13 more Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at org.apache.ignite.internal.util.IgniteUtils.getGridLogger(IgniteUtils.java:855) ... 14 more
nifi-bootstrap.log报错信息
2024-05-20 14:32:15,476 ERROR [Timer-Driven Process Thread-1] o.a.n.p.i.PutIgniteCache PutIgniteCache[id=xxxx-xxxx-xxxx-xxxx] Failed to process session due to java.lang.ExceptionInInitializerError: java.lang.ExceptionInInitializerError java.lang.ExceptionInInitializerError at org.apache.ignite.internal.util.IgniteUtils.<clinit>(IgniteUtils.java:863) at org.apache.ignite.Ignition.start(Ignition.java:353) at org.apache.nifi.processors.ignite.PutIgniteCache.onTrigger(PutIgniteCache.java:157) ...
内容的提问来源于stack exchange,提问作者Rasmus Karlbäck
相关产品推荐
相关产品推荐

