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

执行SBT命令报错:object util is not a member of package com.amazonaws.services.glue

解决找不到com.amazonaws.services.glue.util的问题

我帮你排查下这个问题——你遇到的object util is not a member of package com.amazonaws.services.glue错误,本质是因为Glue的工具类(包括你需要的getResolvedOptions)并不在标准AWS Java SDK里,而是属于AWS Glue专属的类库,你需要在项目中明确添加这个依赖才能正常引用。

第一步:修正sbt依赖配置

在你的build.sbt文件中,需要先添加AWS的Maven仓库(因为Glue专属库不在Maven Central),再引入Glue工具类依赖:

// 指定Scala版本(你已经在用2.11.12)
scalaVersion := "2.11.12"

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

// 引入Glue工具类依赖,建议用Provided scope(因为Glue运行时环境自带这个库,无需打包)
libraryDependencies += "com.amazonaws" % "aws-glue-libs" % "1.0.0" % Provided

注意:如果你需要本地运行测试代码,可以去掉% Provided,或者单独为test scope添加依赖。另外,针对Scala 2.11,推荐使用aws-glue-libs的1.x版本,2.x版本主要适配Scala 2.12及以上。

第二步:重新编译项目

修改完依赖后,重新执行你的编译命令:

sbt ++2.11.12 clean update package

这时候sbt会从AWS仓库拉取所需的依赖,应该就能解决编译报错了。

第三步:修复IntelliJ的依赖识别问题

之前你试过通用的IntelliJ依赖修复方案,但问题根源是依赖本身没加对。现在添加完正确的依赖后,只需:

  • 打开IntelliJ的sbt工具窗口(一般在右侧边栏)
  • 点击"Reload All SBT Projects"按钮
  • 等待同步完成,Cannot resolve symbol util的错误就会消失

补充说明

com.amazonaws.services.glue的核心客户端类确实在标准AWS SDK里,但util子包是Glue团队专门提供的工具集(比如解析作业参数的getResolvedOptions),必须引入专属的aws-glue-libs才能使用。

内容的提问来源于stack exchange,提问作者Sam Malayek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 10:03:44