【问题标题】:Databricks Connect: DependencyCheckWarning: The java class may not be present on the remote clusterDatabricks Connect:DependencyCheckWarning:远程集群上可能不存在 java 类
【发布时间】:2020-03-03 15:20:37
【问题描述】:

我正在对 Databricks 上的远程 Spark 集群执行另一次本地 Scala 代码执行,并得到了这个。

Exception in thread "main" com.databricks.service.DependencyCheckWarning: The java class <something> may not be present on the remote cluster. It can be found in <something>/target/scala-2.11/classes. To resolve this, package the classes in <something>/target/scala-2.11/classes into a jar file and then call sc.addJar() on the package jar. You can disable this check by setting the SQL conf spark.databricks.service.client.checkDeps=false.

我尝试重新导入、清理和重新编译 sbt 项目,但无济于事。

有人知道怎么处理吗?

【问题讨论】:

    标签: apache-spark azure-databricks databricks-connect


    【解决方案1】:

    显然文档中有covered

    spark.sparkContext.addJar("./target/scala-2.11/hello-world_2.11-1.0.jar")
    
    

    我想你编写为 Spark 外部代码的所有内容都被视为依赖项是有道理的。所以一个简单的sbt publishLocal 然后指向上面命令中的jar 路径就可以解决你的问题。

    我的主要困惑来自这样一个事实,即在很长一段时间内我都不需要这样做,直到某个时候这个机制启动了它。我会说相当不一致的行为。


    使用此设置后的个人观察是,您似乎只需要发布一次 jar。我已经多次更改我的代码,并且即使我没有为我所做的新更改持续发布 jar,也反映了更改。这使整个任务成为一项任务。不过还是很混乱。

    【讨论】:

    • 感谢分享答案,您可以接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为已填充。)。这对其他社区成员可能是有益的。谢谢。
    • 感谢您的支持。既然你觉得有用,我可以请你点赞吗?
    猜你喜欢
    • 2022-06-30
    • 2019-10-16
    • 2022-01-24
    • 1970-01-01
    • 2021-12-21
    • 1970-01-01
    • 2020-03-03
    • 2016-03-12
    • 2017-12-09
    相关资源
    最近更新 更多