如何解决无法在 nifi executestreamcommand 中读取 python3 库
我想在 nifi 中使用 ExecuteStreamCommand 来运行 python 脚本,比如 script.py
我的脚本已声明 #!/usr/bin/python3
但它无法从python3读取库
我可以将脚本作为 python3 script.py 运行,但不能在 nifi 的 ExecuteStreamCommand 上运行
任何人都有解决方案
解决方法
在上面的示例中,您没有直接调用 python3
,这是 ExecuteStreamCommand 所期望的(脚本路径应该是一个参数)。 NiFi 使用的环境可能与您在终端程序中使用的环境不同,查看 shebang 行的文件可能是您的 shell 的一个功能,在执行外部程序时 NiFi JVM 可能无法使用该功能过程。
补充马特的答案
你可以直接从 ExecuteStreamCommand 指向 python3 bin
例如
命令路径:/usr/bin/python3
命令参数:/path/to/script.py;x;y;
其次,您不应将 #!/usr/bin/python3
用作 Python3 shebang,而应使用 #!/usr/bin/env python3
- 请参阅此处
Should I put #! (shebang) in Python scripts,and what form should it take?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。