我正在尝试学习 Scala 并遇到以下问题,在运行以下程序时会打印响应但它永远不会终止:
object Demo {
    def main(args: Array[String]): Unit = {
        import dispatch._
        import scala.concurrent.ExecutionContext.Implicits.global
        import scala.util.{Failure, Success}
        val http = Http.configure { b => b }
        val request = url("http://stackoverflow.com/").GET
        val response = http(request OK as.String)
        response onComplete {
            case Success(content) =>
                println(content)
            case Failure(ex) =>
                ex.printStackTrace()
        }
    }
}
为什么会发生这种情况,我该如何调试此类问题?
我已阅读 Dispatch 文档 ( http://dispatch.databinder.net/Dispatch.html ) 但无法找出问题所在。
我怀疑这与 ExecutionContext 和异步调用/期货有关。