使用dbx安装spark-xml库失败,部署PySpark任务时报错求助
解决dbx部署PySpark任务时Maven库配置的格式错误问题
你的错误根源是Maven库的YAML配置格式不符合Databricks Jobs API规范,具体是maven字段下错误使用了数组格式(- coordinates),而API要求maven对应一个包含coordinates的键值对对象。
修正后的conf/deployment.yml配置:
- name: "my-job" libraries: - maven: coordinates: "com.databricks:spark-xml_2.12:0.15.0" # 去掉前面的破折号,改为对象格式 tasks: - task_key: "first_task" <<: *basic-static-cluster python_wheel_task: package_name: "project_name" entry_point: "jl" parameters: ["--conf-file", "file:fuse://conf/tasks/my_job_config.yml"]
错误原因说明:
Databricks Jobs API中,libraries数组的每个元素是单个库对象,对于Maven库,该对象的maven字段必须是键值对对象(而非数组),用于指定coordinates参数。你之前的写法把coordinates当成了maven下的数组元素,导致API解析时抛出Expected 'START_OBJECT' not 'START_ARRAY'的格式错误。
额外验证建议:
- 确认集群Spark版本与
spark-xml的Scala版本匹配(你使用的_2.12对应Scala 2.12,需集群Spark版本兼容) - 部署前可执行
dbx validate命令检查配置文件格式合法性
内容的提问来源于stack exchange,提问作者jalazbe
相关产品推荐
相关产品推荐

