我已经从 PyCharm 设置了一个到服务器的远程解释器。连接工作正常,我还配置了从本地计算机到此服务器的部署。
我配置的解释器来自 Spark (/usr/bin/spark-submit)。但是,当我运行代码时,它输出以下错误:
Error: Unrecognized option: -u
以下是发送到远程服务器的命令:
ssh://user@MYHOST:22/usr/bin/spark-submit -u /home/user/pycharm/main.py
我尝试过使用Python解释器,使用远程服务器上的Python,效果很好。问题是 Spark-submit 不接受选项 -u 但我无法从 PyCharm 中删除该选项。另外,我已经从 PyCharm 中的 Run Configurations 中删除了 PYTHONUNBUFFERED=1 环境变量,但它不起作用。
我也搜索了 JetBrains 论坛,但没有找到任何涉及此问题的内容。
该错误已在 pycharm 跟踪器中报告,这里是论坛中的解决方法。只需创建一个围绕 Spark 可执行文件的可执行包装器即可。
#!/bin/sh
for arg do
shift
[ "$arg" = "-u" ] && continue
set -- "$@" "$arg"
done
exec /usr/bin/spark-submit $@
https://youtrack.jetbrains.com/issue/DS-3593/Support-spark-submit#focus=Comments-27-3000603.0-0