【问题标题】:How to execute sbt tasks inside Play projects cloned from git to a single directory under Jenkins?如何在从 git 克隆到 Jenkins 下的单个目录的 Play 项目中执行 sbt 任务?
【发布时间】:2012-12-06 12:29:34
【问题描述】:

目前 HudsonPluginForPlay 不支持 Play 2.x 并且作者已经有一段时间没有更新插件了。因此,我正在尝试找出一种方法,使用 Play framework 2.0 continuous integration setup 突出显示的 sbt-launcher 插件自动构建和测试。

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

project/
    project1/ (Play project 1)
    project2/ (Play project 2)

现在 sbt 似乎在 project/ 下的根目录上运行,它什么也没做。

有没有办法让它说,在project1/ 下运行sbt 命令,然后在project2/ 下运行?我尝试使用 shell 命令将 cd 放入目录中,但这似乎并没有做任何特别的事情。

【问题讨论】:

标签: jenkins playframework-2.0 sbt


【解决方案1】:

您可能会非常成功地做到以下几点:

(cd project1; sbt package); (cd project2; sbt package)

在项目中执行package 命令。它实际上与 sbt 无关,因为我只利用了您在 Unix 上构建项目的事实,并且每个项目只使用了 cd

你可以用 sbt 做的不多,因为将项目定义为子模块或父项目会禁用每个 Play 项目构建的 project-part,即 sbt 也可以通过 project/ 目录内的 Scala 代码定义一个 sbt 项目,但它只能在根项目内。如果您已将目录project 定义为根项目,则子模块可能已损坏。

【讨论】:

    猜你喜欢
    • 2013-07-03
    • 1970-01-01
    • 2018-08-21
    • 2020-04-06
    • 2018-08-03
    • 2012-03-15
    • 1970-01-01
    • 2015-08-04
    • 2021-06-29
    相关资源
    最近更新 更多