nifi自定义组件项目搭建教程

nifi自定义组件项目搭建教程

一、测试准备工作

1、jdk环境准备:

本次jdk基于1.8,对于jdk,不建议使用更低的版本,因为再1.4.0的源码中,已经开始支持拉姆达表达式,这个也是从jdk1.8才开始支持

2、中央库的Archetype

nifi对于开发自己的processor有自己的一套框架,使用项目模板,可以引用中央库的Archetype,配置简单方便。

二、注意事项

注:将注意事项放到第二项,是不想读者再折腾一圈后才发现解决方案

1、最原始自定义组件一般只需要创建一次,因为随着组件的更新,组件需要向下兼容,基于原来的组件继续开发比较合理。如果有特殊情况,那就特殊对待。

2、如果存在模板添加失败,重新安装idea或者降低idea版本(此次教程测试idea2021.2.3失败,使用idea2018.1.1)

3、如果pom中有报错信息,直接reimport一下即可

4、目前测试知道的几个版本对应

1.12.1→mvn 3.5以上→jdk11以上

1.9.1→mvn3.5以上都可用→jdk1.8以上都可用

三、nifi模板版本地址

相关版本地址(个别地址404,自行选择):

Maven Repository:org.apache.nifi>nifi-processor-bundle-archetype | 菜鸟教程 | 盘古歌技术

四、项目搭建

1、新建模板

new project

GroupId:org.apache.nifi

ArtifactId:nifi-processor-bundle-archetype

Version:你的NiFi版本(这里选择1.12.1)

2、创建项目

然后选择 nifi-processor-bundle-archetype,填写项目名称、包名和版本,在 Properties 这里需要添加一个 Maven Propert:

Name:artifactBaseName

Value:你的组件名称,我这里叫 custom

 

 

 

 

  

等待构建完成,你就会得到如下的项目结构:

3、项目结构

1、nifi-custom-nar 是 NiFi 的 nar 包项目,这个不用我们管,他依赖了 nifi-custom-processors 模块,这个可以从 pom 文件里看到。

2、src/main/java/net/renfei/nifi/processors/custom

/MyProcessor.java 就是我们的 Processor 了,我们的代码在这里写。

  1. src/main/resources/META-INF/services

/org.apache.nifi.processor.Processor 相当于一个注册列表,我们需要把我们的处理器都写在里面,否则会报错。

  1. src/test/java/net/renfei/nifi/processors/custom

/MyProcessorTest.java 是单元测试代码,可以不依赖 NiFi 直接运行测试我们的 Processor。

 

后续开发以及打包nar包,请见nifi自定义组件开发文档(ps:正在编写中)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值