为了账号安全,请及时绑定邮箱和手机立即绑定

NIFI:未找到适用于此属性的控制器服务类型

NIFI:未找到适用于此属性的控制器服务类型

繁星点点滴滴 2021-06-11 22:23:59
我正在为 Apache NiFi 开发 Milo OPCUA 处理器和服务。处理器和服务编译得很好,我可以用它们启动 NiFi。但是,当尝试为我刚刚添加的处理器配置服务时,它只是说“找不到适用于此属性的控制器服务类型。”。这是我的 POM:处理器 JAR<parent>    <groupId>com.tcon</groupId>    <artifactId>pubsub</artifactId>    <version>0.1</version></parent><artifactId>nifi-pubsub-processors</artifactId><packaging>jar</packaging><dependencies>    <dependency>        <groupId>org.apache.nifi</groupId>        <artifactId>nifi-api</artifactId>    </dependency>    <dependency>        <groupId>org.apache.nifi</groupId>        <artifactId>nifi-utils</artifactId>    </dependency>    <dependency>        <groupId>org.apache.nifi</groupId>        <artifactId>nifi-mock</artifactId>        <scope>test</scope>    </dependency>    <dependency>        <groupId>org.slf4j</groupId>        <artifactId>slf4j-simple</artifactId>        <scope>test</scope>    </dependency>    <dependency>        <groupId>junit</groupId>        <artifactId>junit</artifactId>        <scope>test</scope>    </dependency>    <dependency>        <groupId>tcon</groupId>        <artifactId>nifi-miloservice-api</artifactId>        <version>0.1</version>    </dependency></dependencies>处理器 NAR<parent>    <groupId>com.tcon</groupId>    <artifactId>pubsub</artifactId>    <version>0.1</version></parent><artifactId>nifi-pubsub-nar</artifactId><version>0.1</version><packaging>nar</packaging><properties>    <maven.javadoc.skip>true</maven.javadoc.skip>    <source.skip>true</source.skip></properties><dependencies>    <dependency>        <groupId>com.tcon</groupId>        <artifactId>nifi-pubsub-processors</artifactId>        <version>0.1</version>    </dependency>    <dependency>        <groupId>org.apache.nifi</groupId>        <artifactId>nifi-standard-services-api-nar</artifactId>        <version>1.2.0</version>        <type>nar</type>    </dependency></dependencies>服务 POM 应该无关紧要,afaik。它们没有被修改,除了一些 Milo 依赖项。如您所见,处理器 JAR POM 具有来自我的自定义服务的自定义服务 API 依赖项,而处理器 NAR POM 具有来自 nifi 的标准 API 依赖项。文档说这就是将我的处理器“链接”到我的服务所需要做的一切。我错过了什么?
查看完整描述

1 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

您还需要通过在处理器 JAR 项目的 src/main/resources 文件夹中包含一个文件来向 ServiceLoader 注册您的控制器服务。您将需要在您的资源文件夹下有一个 META-INF/services 文件夹,其中包含一个文件org.apache.nifi.controller.ControllerService,其中包含实现 ControllerService 接口的类的完全限定名称的行。


查看完整回答
反对 回复 2021-06-23
  • 1 回答
  • 0 关注
  • 147 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信