maven - 覆盖数据 block 依赖

标签 maven databricks azure-databricks

在我们的项目中,我们使用 1.3.4 版中的 com.typesafe:config。据最新release notes ,集群上的 Databricks 已经提供了这种依赖关系,但是在一个非常旧的版本 (1.2.1) 中。
如何用我们自己的版本覆盖提供的依赖项?

我们使用 maven,在我们的依赖项中我有

<dependency>
    <groupId>com.typesafe</groupId>
    <artifactId>config</artifactId>
    <version>1.3.4</version>
</dependency>

因此,我们创建的 jar 文件应该包含较新的版本。

我通过上传 jar 文件创建了一个 Job。 Job 失败是因为找不到 1.2.1 版本之后添加的方法,所以看起来我们提供的库被集群上的旧版本覆盖了。

最佳答案

最后,我们通过对相关类着色,将以下内容添加到我们的 build.sbt 中解决了这个问题

assemblyShadeRules in assembly := Seq(
  ShadeRule.rename("com.typesafe.config.**" -> "shadedSparkConfigForSpark.@1").inAll
)

关于maven - 覆盖数据 block 依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59411429/

相关文章:

python - 何时在 PySpark 中使用 UDF 与函数?

maven - 如何从Gradle中的兄弟项目构建Maven元项目

python - PySpark:从另一个 Notebook 导入变量时,如何抑制 PySpark 单元中的 %run 输出?

python - Azure 数据湖 - 使用 Python 读取

azure - 无法在 Databricks 中为 ADLS Gen2 创建挂载点

python - Spark Dataframe 在性能上比 Pandas Dataframe 有何优势?

Azure Databricks 通过服务主体访问 Azure Data Lake Storage Gen2

java - 即使在其他平台上运行,也使用 Maven 程序集插件设置 Linux 文件权限?

maven - 如何使用 openapi-generator-maven-plugin 生成 OpenApi 客户端?

java - mvn 执行 :exec and mvn exec:java difference