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

SBT 1.9.2编译Spark自定义模块触发URISyntaxException错误求助

问题分析与解决建议
  • 优先排查插件兼容性:SBT 1.9.x相对于1.5.x有不少底层变动,很多Spark相关的SBT插件(比如sbt-assembly、自定义Spark构建插件)可能未适配新版本。检查plugin.sbt中的插件版本,替换为支持SBT 1.9.2的最新版本后重新编译测试。

  • 处理未解析的Maven属性:${baidu-rpc.artifactId}是Maven风格的属性变量,SBT 1.9.x对依赖路径的解析更严格——旧版可能会忽略未解析的变量,新版则直接抛出异常。你可以:

    • 在build.sbt或SparkBuild.scala中手动定义该属性,比如:
      val baiduRpcArtifactId = "你的baidu-rpc实际artifactId"
      
    • 直接将依赖中的变量替换为具体的artifactId值,避免使用占位符。
  • 排查隐式插件的影响:部分Maven相关解析插件可能在SBT 1.9.x中默认启用了严格模式,导致未解析的属性暴露。尝试临时注释plugin.sbt中的非核心插件,逐个排查哪个插件触发了该问题。

  • 验证是否为SBT官方Bug:如果上述操作都无效,可尝试降级到SBT 1.8.x版本测试是否恢复正常。同时可以查看SBT官方GitHub Issues,搜索是否有其他用户遇到相同的URISyntaxException与未解析变量问题,确认是否为版本Bug。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 10:22:13