Android gradle 任务 Google Appengine

Android gradle task Google Appengine

我正在尝试为我的 android 应用程序编写一个 gradle 任务,启动 google appengine 开发人员服务器,运行测试,然后关闭服务器。

到目前为止我尝试过的是这样的:

task runAppEngine (dependsOn: ":backend:appengineRun") <<{
   //run test 
   //stop development server
    }

appengineRun 任务运行,但我在 gradle 任务的 doLast 部分中放入的内容似乎从未执行过。例如,如果我输入 println 语句,它永远不会打印到控制台。

我也不确定如何从任务中调用 appengineStop 来停止开发服务器。

感谢任何人提供的帮助!

您可能需要 运行 您的 backend:appengineRun 任务处于 daemon 模式,以便 gradle 进程能够继续。参见:https://github.com/GoogleCloudPlatform/gradle-appengine-plugin#convention-properties

这个 hack 在我的测试中似乎有效

task runAppEngine (dependsOn: ":backend:appengineRun") {
  project(":backend").afterEvaluate { backend ->
    backend.extensions.appengine.daemon = true
  }              
  doLast {
    println "started the server!"
  }
}

runAppEngine.finalizedBy ":backend:appengineStop"
// or whatever task you want it to stop after