从其他模块导入文件时出现此错误?有人可以告诉我原因是什么。它在控制台中正常运行但是当我将其作为oozie作业运行时,命令失败。
文件夹结构:
oozie/common/file.py
oozie/common/__init__.py
oozie/__init__py
我想要导入的位置:
oozie/mylocation/pjt.py
oozie/common/__init__.py
命令:
import oozie.common.file as file
答案 0 :(得分:0)
您的python代码将从存储它的HDFS移动到执行的datanode的本地文件系统中。 确保将所需的所有文件都设置到oozie作业中,否则其中一些文件将不会下载到所选的datanode中。
请记住:
1)必须在每个datanode上安装所有python系统库
2)如果设置PYTHON LIBPATH,本地库可以工作。
所以你在你的python脚本中第一行,应该是设置库路径的东西。
在我看来,要将所有类保存到同一个文件中,python(如果可以的话)是在oozie上启动它们时的无痛解决方案。
如果您可以开始使用Java。