我使用intellij idea来从bootstrap /.../ RunNiFi.main(" start")运行nifi源代码:github link,但它出错了:{{3 }}
你可以帮帮我吗?感谢
我应该从bootstrap /.../ RunNiFi.main(" start")运行代码吗?
答案 0 :(得分:3)
您无法从IDE启动单个Java类来启动NiFi,类路径无法正确设置。
您需要运行完整版本并从nifi-assembly / target获取程序集,然后使用" bin / nifi.sh start"从构建的程序集运行NiFi。
您可以直接从解压缩的程序集目标运行它,例如:
cd nifi-assembly/target/nifi-1.6.0-SNAPSHOT-bin/nifi-1.6.0-SNAPSHOT
./bin/nifi.sh start
编辑:您仍然可以使用调试器,但它将调试远程Java应用程序。在NiFi的bootstrap.conf中,取消注释以下行并重新启动NiFi:
#java.arg.debug=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000
这告诉NiFi JVM在端口8000上侦听传入的调试请求。
在IDE中,创建一个远程调试配置并连接到localhost端口8000.您的断点应该正常工作。
答案 1 :(得分:0)
如果你能读中文,你可以阅读我的个人博客link here
我找到了方法, 如果您想要远程调试nifi,请关注remote debug link。
如果您想进行本地调试,可以按照以下方式进行操作。 (我在Windows中使用了Intellij的想法进行调试)
1
$ git config --global core.longpaths true
$ git config --global core.autocrlf false
打开intellij想法到git clone https://github.com/apache/nifi, picture here, 将import configure设置为default,next ... 打开项目后,nifi可能会收到错误信息,只是忽略它。
mvn -T 2 clean install -DskipTests
配置调试器 picture here, picture here
确认:
nifi快速入门链接:https://nifi.apache.org/quickstart.html
在调试模式下运行NiFi链接:https://cwiki.apache.org/confluence/display/NIFI/Contributor+Guide#ContributorGuide-RunningNiFiinDebugmode