当前位置: 首页 > 知识库问答 >
问题:

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

艾心远
2023-03-14

我正在为Apache NIFI开发一个Milo OPCUA处理器和服务。处理器和服务编译得很好,我可以用它们启动NiFi。但是,当试图为我刚刚添加的处理器配置服务时,它只是说“没有找到适用于此属性的控制器服务类型”。

以下是我的邮件:

<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>
<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>

我错过了什么?

共有1个答案

刘承悦
2023-03-14

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

 类似资料:
  • 我编写了一个自定义的NiFi处理器,用于在BigQuery上执行一些任务。我希望能够重用与NiFi捆绑在一起的GCP凭据提供者控制器服务,以用于身份验证。这可能吗?我尝试将nifi-gcp-processors maven依赖项添加到我的项目中,它成功构建,但当我尝试用我的nar启动NiFi时,它失败了,出现了这个错误消息。

  • 我的目录 我试图创建学校的Spring启动应用程序,列出书籍到一个HTML页面从数据库与控制器。 就我个人而言,我认为问题在于控制器由于某种原因无法找到模板。因为当我通过chrome导航到想要的模板时,它只在页面上显示“booklist”,其他什么都没有。 我尝试创建一个全新的项目,并将代码从其他文件复制到新文件中,但没有结果。 我的控制器类: 我的html模板: 波姆。xml文件: 应用属性文件

  • Navicat 提供“服务器监控”提供来查看已选择的服务器的属性。从菜单栏选择“工具”->“服务器监控”并选择你想要的服务器类型。 【注意】仅适用于 MySQL、Oracle、PostgreSQL、SQL Server 、MariaDB 和 MongoDB。 进程列表 此选项卡以列表显示所有已选择的服务器的进程。进程列表提供以下的信息。它是根据你所选择的数据库类型而定。 在设置连接时提供的服务器名

  • Navicat 提供“服务器监控”提供来查看已选择的服务器的属性。从菜单栏选择“工具”->“服务器监控”并选择你想要的服务器类型。 【注意】仅适用于 MySQL、Oracle、PostgreSQL、SQL Server、MariaDB 和 MongoDB。 进程列表 此选项卡以列表显示所有已选择的服务器的进程。进程列表提供以下的信息。它是根据你所选择的数据库类型而定。 在设置连接时提供的服务器名。

  • Navicat 提供“服务器监控”提供来查看已选择的服务器的属性。从菜单栏选择“工具”->“服务器监控”并选择你想要的服务器类型。 【注意】仅适用于 MySQL、Oracle、PostgreSQL、SQL Server、MariaDB 和 MongoDB。 进程列表 此选项卡以列表显示所有已选择的服务器的进程。进程列表提供以下的信息。它是根据你所选择的数据库类型而定。 在设置连接时提供的服务器名。

  • 我明白,对于处理器,我只需在文件夹下的中编写代码,然后从中创建一个nar文件。但是在控制器服务的情况下,我有4个文件夹生成。我可以看到两个java文件。 > 显示在文件夹下 显示在文件夹下 现在,为什么在自定义控制器服务的情况下生成两个java文件,而在自定义处理器的情况下只生成一个java文件。另外,由于我试图模仿服务,其中的java文件中有两个我应该复制服务的原始源代码。 请从头开始指导我创建