如何在Databricks中选择com.crealytics:spark-excel包并解决安装pending问题
解决Databricks中com.crealytics:spark-excel包安装Pending及版本选择问题
一、排查安装Pending的常见方法
- 确认集群状态:确保集群处于Running状态,若集群正在初始化、重启或资源(CPU/内存)耗尽,会导致依赖安装阻塞。
- 检查Maven仓库配置:在集群「高级选项」→「Spark」→「Spark配置」中查看
spark.jars.repositories,确认仓库地址可正常访问,排除网络或地址错误问题。 - 指定明确版本号:无版本号时,Databricks会尝试拉取最新版,可能因仓库索引延迟导致pending,建议直接指定完整坐标(如
com.crealytics:spark-excel_2.12:0.18.5)。 - 手动上传jar包:若Maven安装持续失败,可直接下载对应jar包,通过Databricks「库」页面上传安装,绕开仓库拉取环节。
二、spark-excel包的选择依据
- 匹配Spark与Scala版本:包名中的后缀(如
_2.12)对应Scala版本,需与Databricks集群的Scala版本一致;同时Spark版本要适配:- Spark 3.x + Scala 2.12:选择
com.crealytics:spark-excel_2.12:0.18.x及以上稳定版 - Spark 2.x + Scala 2.11:选择
com.crealytics:spark-excel_2.11:0.13.x系列版本
- Spark 3.x + Scala 2.12:选择
- 适配Databricks Runtime(DBR):不同DBR版本绑定固定的Spark/Scala组合,比如DBR 11.x对应Spark 3.3.x + Scala 2.12,需选择适配该组合的spark-excel版本。
- 功能需求匹配:若需处理复杂Excel格式(合并单元格、公式、样式),优先选较新的稳定版;仅需基础读写时,选择经过长期验证的旧稳定版即可。
- 避免依赖冲突:部分旧版本的spark-excel可能与Databricks自带的POI库冲突,选择前可查看包的依赖树,确认无冲突依赖。
内容的提问来源于stack exchange,提问作者Maheshnagakumar
相关产品推荐
相关产品推荐

