Python wheel 作业 - 找不到模块
Python wheel job - module not found
问题: 我用一个非常基本的模块制作了一个轮子,并将其安装在 Databricks 集群上。创建 'Python wheel' 类型的作业时,该作业无法 运行,因为它找不到包。
设置非常简单。我有一个源代码文件夹:
src
|-app_1
|- __init__.py
|- main.py
其中 main.py
包含:
def func():
print('Hello world!')
然后,我执行以下操作:
将 src
建造成轮子 demo-0.0.0-py3-none-any.whl
。
在 Databricks 集群中安装 demo-0.0.0-py3-none-any.whl
。然后我验证轮子是否已正确构建和安装。我知道这一点是因为我能够 运行 from app_1.main import func
,然后调用 func
成功。这是集群中安装的唯一轮子。
创建一个 Python wheel 类型的作业,然后将包名称设置为 app_1
,将入口点设置为 main.func
。当我 运行 工作时,我得到一个错误,说 app_1
找不到。
我认为您需要将包设置为 app1.main
并将入口点设置为 func
因为文档说它将调用 $packageName.$entryPoint()
,在您的情况下完整的命令是 app1.main.func()
让它工作的方法是用类似的东西更新 __init__.py
:
from my_package import main
然后在你的数据块作业中,你的入口点将是:main.main
(假设你在 main.py
中有一个函数 main
问题: 我用一个非常基本的模块制作了一个轮子,并将其安装在 Databricks 集群上。创建 'Python wheel' 类型的作业时,该作业无法 运行,因为它找不到包。
设置非常简单。我有一个源代码文件夹:
src
|-app_1
|- __init__.py
|- main.py
其中 main.py
包含:
def func():
print('Hello world!')
然后,我执行以下操作:
将
src
建造成轮子demo-0.0.0-py3-none-any.whl
。在 Databricks 集群中安装
demo-0.0.0-py3-none-any.whl
。然后我验证轮子是否已正确构建和安装。我知道这一点是因为我能够 运行from app_1.main import func
,然后调用func
成功。这是集群中安装的唯一轮子。创建一个 Python wheel 类型的作业,然后将包名称设置为
app_1
,将入口点设置为main.func
。当我 运行 工作时,我得到一个错误,说app_1
找不到。
我认为您需要将包设置为 app1.main
并将入口点设置为 func
因为文档说它将调用 $packageName.$entryPoint()
,在您的情况下完整的命令是 app1.main.func()
让它工作的方法是用类似的东西更新 __init__.py
:
from my_package import main
然后在你的数据块作业中,你的入口点将是:main.main
(假设你在 main.py
main