当我在ExecuteScript处理器中运行python作业时会发生这种情况。
我已多次搜索答案,但无法找到有效的解决方案。
答案说我应该添加这样的代码来包含我的外部python库,我试试但是错误仍然存在。
import sys
sys.path.append('/usr/lib64/python2.7/site-packages')
我也在处理器中添加了module属性。但它仍然无法运作。
答案 0 :(得分:1)
我的理解是,当您使用 ExecuteScript 处理器时,您不需要在import sys
中使用Python脚本:这是隐式为您完成的。此外,由于您已在处理器配置中定义了“模块目录”属性,因此无需在脚本中将其添加到路径中。
我们无法再看到您的脚本中的第一行半。大概你在第4行有import six
或import X from six
。
错误是说它在模块目录中找不到名为 six 的模块,因此可能的原因是:
这里有关于加载python库的问题的其他问题,例如:
答案 1 :(得分:0)
我仍在解决此问题,但是我发现nifi设置中的工作目录始终是:
/usr/hdf/3.3.1.0-10/nifi
无论模块目录设置为什么。