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

如何在sbt控制台中向Scala文件传递参数?

在sbt控制台给加载的Scala脚本传递参数的方法

嘿,我明白你现在的困惑——用:load加载了你的test.scala脚本,但不知道怎么给里面的args(0)传值对吧?这里有几个实用的解决办法:

方法1:把脚本改成可调用的函数(最灵活)

先修改你的test.scala,把打印逻辑包装成一个接受参数的函数,这样加载后可以随时调用:

def sayHello(name: String): Unit = println("Hello, " + name + "!")

然后在sbt控制台里执行:

:load test.scala
sayHello("Alice")  // 你想传什么参数直接填这里就行

这样你可以多次调用这个函数,传不同的参数,非常方便。

方法2:预先定义args变量再加载脚本

如果你不想修改原脚本,也可以在sbt控制台里先定义好args数组,再加载脚本:

// 先设置你要传递的参数
val args = Array("Bob")
// 然后加载脚本
:load test.scala

加载后脚本里的args(0)就会引用你刚才定义的数组元素,直接输出Hello, Bob!。

方法3:用sbt的run命令直接运行脚本

如果你不需要在控制台会话里交互,也可以直接用sbt的run命令来运行脚本并传递参数,不用:load:
在sbt控制台里输入:

run "Charlie"

sbt会自动编译并运行你的脚本,把"Charlie"作为第一个参数传给args(0)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:44:39