求助解决sbt.ResolveException:scalac-plugin_2.12.3依赖未解析问题
解决sbt无法解析org.scalamacros依赖的问题
看起来你遇到的是sbt找不到特定版本Scalamacros插件的问题,这个错误通常和依赖仓库配置、版本兼容性或者缓存有关。我帮你整理了几个可行的解决方案:
添加快照仓库
你用的2.0.0-96-9f738df2版本号里带有哈希值,明显是一个快照构建版本,这类版本默认不会发布到Maven Central,需要手动添加Sonatype的快照仓库。在你的build.sbt里加上这行:resolvers += Resolver.sonatypeRepo("snapshots")或者更明确的地址:
resolvers += "Scalamacros Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/"切换到匹配的稳定版本
你当前配置里用的paradise版本是2.1.0,但Scalamacros却用了一个非稳定的快照版,版本不匹配很容易出问题。建议把Scalamacros版本换成和paradise配套的稳定版:lazy val ScalamacrosVersion = "2.1.0"这个版本是官方发布的稳定版,兼容性更好,也更容易被sbt解析到。
清理sbt缓存后重新构建
有时候本地缓存的依赖文件损坏或者残留了旧数据,会导致解析失败。执行以下命令清理缓存:sbt clean cleanFiles之后再运行
sbt compile,让sbt重新下载所有依赖。检查插件依赖的引用方式
确保你添加scalac-plugin的语法正确,因为插件的artifactId已经绑定了Scala版本(比如scalac-plugin_2.12.3),所以应该用%而不是%%来引用:addCompilerPlugin("org.scalamacros" % "scalac-plugin" % ScalamacrosVersion cross CrossVersion.full)如果用
%%会自动追加当前Scala版本,导致artifactId变成scalac-plugin_2.12.3_2.12.3,肯定找不到。
先试试上述方案,通常切换稳定版本或者添加快照仓库就能解决问题。
内容的提问来源于stack exchange,提问作者ganaakruti
相关产品推荐
相关产品推荐

