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

sbt 1.1.5版本中如何访问并打印assemblyJarName变量的值?

在sbt 1.1.5中打印assemblyJarName的值

嘿,这个问题我熟!你遇到的报错是因为sbt 1.x版本里,assembly插件的配置项已经被放到任务作用域里了,直接写assemblyJarName已经找不到正确的设置啦,sbt提示的assemblyPackageDependency / assemblyJarName是另一个打包任务(专门打依赖包的)的配置,而你要的应该是主打包任务assembly对应的配置。

下面给你两种可行的方法:

方法一:直接在sbt控制台打印(最快最方便)

打开sbt控制台后,直接输入这行命令就能看到结果:

show assembly / assemblyJarName

如果想直接用println输出,也可以在控制台里执行:

println((assembly / assemblyJarName).value)

方法二:在build.sbt里定义任务打印

如果想把打印逻辑写到build.sbt文件里,可以添加一个自定义任务:

// 定义一个任务键,用来标识打印jar名称的任务
lazy val printAssemblyJarName = taskKey[Unit]("Prints the name of the assembly jar")

// 实现这个任务的逻辑
printAssemblyJarName := {
  // 正确引用assembly任务作用域下的assemblyJarName配置
  val jarName = (assembly / assemblyJarName).value
  println(s"Assembly Jar Name: $jarName")
}

保存文件后,在sbt控制台执行printAssemblyJarName命令,就能看到打印的结果了。

另外要注意,确保你已经在project/plugins.sbt里添加了和sbt 1.1.5兼容的assembly插件版本(推荐0.14.10):

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.10")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:36:02