gpt4 book ai didi

scala - 带有来自 shell 的 CLI 参数的“sbt run”

转载 作者:行者123 更新时间:2023-12-02 17:39:48 25 4
gpt4 key购买 nike

我尝试使用 sbt 启动器版本 0.12.1 运行带有 CLI 参数的 scala 项目。从 scala 提示符运行时工作正常:

$ sbt
[info] (...)
> run sth
(...)
[success] Total time: 0 s, completed Nov 9, 2012 3:04:47 PM

但是当我想从 shell 运行它时,按照this answer例如,我收到错误:

$ sbt "run sth"
[info] (...)
you need to provide source file name
[success] Total time: 0 s, completed Nov 9, 2012 3:07:07 PM
[error] Not a valid command: sth (similar: set, last, shell)
[error] Expected '/'
[error] Expected ':'
[error] Not a valid key: sth (similar: test, state, watch)
[error] sth
[error] ^

我的 scala 项目给出了“您需要提供源文件名”信息,表明 main 没有获得任何 CLI 参数。

这是否在以前版本的 sbt 中有效(在引用的问题中),或者我做错了什么?

最佳答案

问题可能是您将 sbt 启动文件中的参数传递给 Java 的方式。就我而言,它是:

java -Xmx4096M -jar `dirname $0`/sbt-launch_0.12.1.jar "$@"

我刚刚确认:它适用于 0.12 和 0.12.1。例如,对于一个只打印其参数的程序,我得到:

$ sbt "run-main SomeMain blah blah"
Outut:
[blah, blah]

通过使用run-main,您还可以避免 sbt 以某种方式看不到您的 main 函数的可能性。

关于scala - 带有来自 shell 的 CLI 参数的“sbt run”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13309738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com