【问题标题】:Second CLI command doesnt work when running from Scala从 Scala 运行时,第二个 CLI 命令不起作用
【发布时间】:2021-03-27 04:49:07
【问题描述】:

我正在尝试在我的 Scala 应用程序中执行 Python 命令。我已经看到多个 SO 问题显示如何执行此操作,并且它有效,但我的第二个命令似乎没有做任何事情。 在下面的代码中,from src.main import run_beta; 执行但run_beta() 不执行。

当我直接在命令行中运行它时:python -c 'from src.main import run_beta; run_beta()',它工作正常。任何想法我做错了什么?

val cli_command = Seq(
  "python"
  ,"-c"
  ,"'from src.main import run_beta; run_beta()'"
)

println(s"CLI command is: $cli_command")

val cli_logger = ProcessLogger(
  (o: String) => println("CLI_STDOUT: " + o),
  (e: String) => println("CLI_STDERR " + e))

cli_command ! cli_logger

【问题讨论】:

  • 在调试时,删除单引号 '。我认为在没有 shell 的情况下调用它们没有任何作用。
  • 感谢@jwvh - 删除单引号解决了错误!

标签: scala command-line


【解决方案1】:

根据 jwvh 的评论,删除 'from src.main import run_beta; run_beta()' 周围的单引号解决了这个问题。

相反,我运行:from src.main import run_beta; run_beta(),它按预期工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 2013-06-14
    • 1970-01-01
    • 2015-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多