You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在应用中引入Glue 4.x依赖?无法找到对应Jar包

解决AWS Glue 4.x依赖引入失败问题

核心原因:从AWS Glue 4.0开始,官方不再将com.amazonaws:AWSGlueETL核心包发布到公开的aws-glue-etl-artifacts S3 Maven仓库,所以直接修改版本号会出现依赖找不到的错误。

以下是几种可行的解决方法:

方案1:使用Glue本地开发工具包(推荐本地开发场景)

  1. 从AWS Glue控制台下载对应4.0版本的开发工具包(包含所有依赖jar包)
  2. 在sbt项目中配置本地依赖:
    // 添加核心Glue ETL包
    unmanagedJars in Compile += file("/本地路径/aws-glue-libs/glue-assembly-4.0.0.jar")
    // 添加工具包中所有依赖jar的目录
    unmanagedBase := file("/本地路径/aws-glue-libs/jars")
    

方案2:配置AWS专用Maven仓库并使用新依赖坐标

Glue 4.x的部分依赖已上传至AWS的Maven仓库,可通过以下配置引入:
在build.sbt中添加仓库和依赖:

// 添加AWS官方Maven仓库
resolvers += "AWS Maven Repository" at "https://aws.oss.sonatype.org/content/repositories/releases/"

// 使用Glue 4.x的新依赖坐标
lazy val awsGlue = "software.amazon.glue" % "glue-etl" % "4.0.0"

注意:部分核心组件(如GlueContext)可能仍需本地开发包补充,建议结合方案1使用。

方案3:使用Glue Runtime容器构建(CI/CD场景)

如果是自动化构建环境,可直接使用AWS官方提供的Glue 4.0 Runtime容器,容器内已预装所有依赖:

# 启动Glue 4.0容器
docker run -it --rm amazon/aws-glue-libs:glue-4.0 bash
# 在容器内执行sbt构建命令
sbt compile

额外注意事项

  • Glue 4.0对应Spark 3.3版本,需同步升级项目中Spark相关依赖版本,避免兼容性问题
  • 自定义UDF、第三方库可能需要适配Glue 4.x的API变更

内容的提问来源于stack exchange,提问作者Chris Bedford

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 11:05:16