我想在我的源代码中调用sbt update
来更新多个sbt项目。在shell这很简单:执行shell进程时设置当前工作目录
cd /path/to/project && sbt update
但是,如果我在我的代码中使用scala.sys.process
,也不会记得cd
因此sbt
被称为在错误的目录。代码是这样的:
import scala.sys.process._
("cd /path/to/project" #&& "sbt update").!!
而我没有在文档中找到任何可能性通过控制台设置sbt的项目路径。这将是很好,如果是这样工作的:
"sbt -projectPath /path/to/project update".!!
如果这样的事情是可能的,这将节省我很多乱七八糟的! (尤其是它运行在UNIX和Windows)。
你可以尝试使用Process(cmd,cwd)!明确设置工作目录。 – venechka 2012-07-20 11:58:58
这个问题的标题令人难以置信的误导。这个问题与sbt无关 - 它可能是其他任何程序。 – 2012-07-20 13:28:03