Scala SBT:启动命令行';运行';非默认项目的主类的

Scala SBT:启动命令行';运行';非默认项目的主类的,scala,sbt,Scala,Sbt,我开始使用构建Scala代码(并处理依赖项)。据我所知,如果我使用 $ sbt run <args> $sbt运行 在命令行上,这将运行主项目的主类 是否可以从命令行在任何其他项目中“运行”,即不在交互式会话模式下运行?(我正在考虑一些看起来像$sbt project run之类的东西。) 在交互模式下,我要做的是: $ sbt > project <projectname> > run <args> $sbt >计划 >跑 这似乎很简单,

我开始使用构建Scala代码(并处理依赖项)。据我所知,如果我使用

$ sbt run <args>
$sbt运行
在命令行上,这将运行主项目的主类

是否可以从命令行在任何其他项目中“运行”,即不在交互式会话模式下运行?(我正在考虑一些看起来像
$sbt project run
之类的东西。)

在交互模式下,我要做的是:

$ sbt
> project <projectname>
> run <args>
$sbt
>计划
>跑

这似乎很简单,但我找不到任何描述这种行为的文档。非常感谢您的提示……

您只需引用每个命令(如第二个示例中所示),因此在您的情况下:

$ sbt "project foo" "run arg1 arg2"

$sbt foo/run arg1 arg2
也可以为我工作

$ sbt "run someNumber"
这也可能有一些帮助:

def main(args: Array[String]) {
    val n = args(0).toInt
}
这是有效的:
sbt“runMain com.example.Hello arg1”
sbt“runMain com.example.Hello arg1”


请参见此处以供参考:

该死,我离得太近了:)非常感谢!如何使用指定主项目?我认为它比大多数投票答案中的加倍命令更自然