gpt4 book ai didi

apache-spark - 如何管理冲突的 DataProc Guava、Protobuf 和 GRPC 依赖项

转载 作者:行者123 更新时间:2023-12-04 20:33:26 26 4
gpt4 key购买 nike

我正在从事一个需要使用 Java 库 (youtube/vitess) 的 scala Spark 工作,该工作依赖于较新版本的 GRPC (1.01)、Guava (19.0) 和 Protobuf (3.0.0),而不是当前在 DataProc 1.1 上提供图片。

在本地运行项目并使用 maven 构建时,这些依赖项的正确版本将被加载,作业将正常运行。向 DataProc 提交作业时,首选这些库的 DataProc 版本,作业将引用无法解析的类函数。

在 DataProc 上提交 Spark 作业时,确保加载正确版本的依赖项依赖项的推荐方法是什么?我无法重写该库的组件以使用 DataProc 提供的这些包的旧版本。

最佳答案

推荐的方法是将您工作的所有依赖项包含在 uber jar 中(例如,使用 Maven Shade 插件创建)和 relocate此 uber jar 中的依赖项类,以避免与 Dataproc 提供的库中的类发生冲突。

作为引用,你可以看看这是如何doneCloud Storage connector这是 Dataproc 发行版的一部分。

关于apache-spark - 如何管理冲突的 DataProc Guava、Protobuf 和 GRPC 依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40498542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com