我在terminal中用python xx.py文件就可以执行,然而用flink run -m localhost:8081 -py xx.py就会报上面的错误说没有pyflink的组件。 (base) huilin@huilin-Lenovo:~/Documents/Learning/experiment$ flink run -m localhost:8081 -py demo_predict.py Traceback (most recent call last): File "demo_predict.py", line 51, in from pyflink.common.serialization import SimpleStringEncoder ModuleNotFoundError: No module named 'pyflink.common.serialization'
我已经试了很多方法,创建了虚拟环境在里面安装了对应的包,还是不行。请问有什么解决办法?*来自志愿者整理的flink邮件归档
从报错看,似乎是作业运行的时候,找不到pyflink,如果确实是这样的话,有几个解决方案:
通过API指定集群端的Python路径: set_python_executable,参考 [1]
通过配置python.executable,参考[2]
[1]
https://ci.apache.org/projects/flink/flink-docs-release-1.12/dev/python/table-api-users-guide/dependency_management.html
[2]
https://ci.apache.org/projects/flink/flink-docs-release-1.12/dev/python/python_config.html#python-executable*来自志愿者整理的flink邮件归档
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。