【发布时间】:2020-05-10 11:27:54
【问题描述】:
我似乎无法为库存 nifi 处理器(例如 Wait 和 PutDistributedMapCache)创建自定义 DistributedMapCacheClientService(名为 TestDistributedMapCacheClientService)以供使用。我能够让 Wait 和 PutDistributedMapCache 看到我的自定义服务,但处理器无法启动,因为 nifi 说我的 nar“与 AtomicDistributedMapCacheClient 不兼容”。
public class TestDistributedMapCacheClientService extends AbstractControllerService implements AtomicDistributedMapCacheClient<byte[]> {
:
}
nifi canvas error for Wait processor
nifi canvas error for PutDistributedMapCache processor
TestDistributedMapCacheClientService is selectable from properties dropdown
TestDistributedMapCacheClientService is selectable from properties dropdown
如果我只选择我自定义的任何一个 nifi 的 DistributedMapCacheClientServices(如 CouchbaseMapCacheClient 或 RedisDistributedMapCacheClient),我没有任何问题。感谢您的帮助。
这是我的项目设置及其依赖项:
- 我的 nifi 服务包
- 我的 nifi 服务
- my-nifi-services-api
- nifi-api(提供)
- nifi-standard-services (pom)
- nifi-distributed-cache-client-service-api(提供)
- my-nifi-services-api
- nifi-api(提供)
- nifi-distributed-cache-client-service-api(提供)
- my-nifi-services-nar
- nifi-standard-services-api-nar (nar)
- 我的 nifi 服务
- my-nifi-services-api-nar
- my-nifi-services-api
- nifi-standard-services-api-nar (nar)
- 我的 nifi 服务
【问题讨论】:
-
你定义了
META-INF/services/org.apache.nifi.controller.ControllerService吗?您能显示 NAR 中包含的所有 nifi 库的列表吗? -
@daggett 是的,我做到了。否则我的测试控制器服务甚至无法在画布上进行选择。
-
还有 nar 中的 nifi 库?
-
@dagget。是的。这一切都在那里。看来我不是唯一一个有这个问题的人,虽然这个线程很老。 community.cloudera.com/t5/Support-Questions/…
-
你不应该在 NAR 中有任何内部 nifi 库。
标签: java service controller apache-nifi