如何在从git克隆到Jenkins下单个目录的Play项目中执行sbt任务?

如何在从git克隆到Jenkins下单个目录的Play项目中执行sbt任务?,jenkins,playframework-2.0,sbt,Jenkins,Playframework 2.0,Sbt,目前HudsonPluginForPlay不支持Play2.x,作者已经有一段时间没有更新插件了。因此,我正试图找到一种方法,使用sbt launcher插件,让构建自动化,并在我自己身上进行测试,如图所示 但是,我遇到了一个问题,我的git签出结构是这样的 project/ project1/ (Play project 1) project2/ (Play project 2) 现在sbt似乎在project/下的根目录上运行,它什么都不做 有没有办法让它说,在projec

目前HudsonPluginForPlay不支持Play2.x,作者已经有一段时间没有更新插件了。因此,我正试图找到一种方法,使用sbt launcher插件,让构建自动化,并在我自己身上进行测试,如图所示

但是,我遇到了一个问题,我的git签出结构是这样的

project/
    project1/ (Play project 1)
    project2/ (Play project 2)
现在sbt似乎在project/下的根目录上运行,它什么都不做


有没有办法让它说,在project1/下运行sbt命令,然后在project2/下运行sbt命令?我尝试使用shell命令将cd刻录到目录中,但这似乎没有什么特别的作用。

您可能会非常成功地执行以下操作:

(cd project1; sbt package); (cd project2; sbt package)
在项目内执行包命令。事实上,这与sbt无关,因为我只利用了您在Unix上构建项目的事实,并且每个项目只使用cd


由于将项目定义为子模块或父项目会禁用每个Play项目构建中的项目部分,因此sbt没有太大用处,即sbt也可以通过sbt项目内的项目/目录中的Scala代码来定义,但只能在根项目中定义。如果已将目录项目定义为根项目,则子模块可能已损坏。

SBT中有子项目。我自己没有使用过,所以我只能向您推荐:还添加了SBT标签