作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
用 sbt 开发我几乎不使用 ~run
命令,说 sbt 拾取我的代码更改。这很舒服。
现在我要玩一下 akka .当 ctrl+D 停止应用程序并即时获取代码时,有什么方法可以恢复默认 sbt 的行为?
这是示例应用程序:
object Main extends App {
println("Starting actors...")
val system = ActorSystem("MySystem")
val myActor = system.actorOf(Props[Actors.MyActor], name = "myActor")
myActor ! "test"
// system.shutdown()
}
object Actors {
class MyActor extends Actor {
val log = Logging(context.system, this)
def receive = {
case "test" => log.info("received test")
case _ => log.info("received something else")
}
}
}
run
和
~run
命令或通过 ctrl+D 中断或更改时重新加载代码。只有 ctrl+C 停止整个 sbt。据我所知,播放框架有一些解决方案可以做到这一点,因为看起来它在
~run
中的 ctrl+D 上停止了 Actor 系统模式
最佳答案
你可以试试 JRebel .您可以获得 free license for Scala development .对我来说非常好,尤其是与 sbt 一起工作。 Sbt 编译类,使用 JRebel 运行的 Scala 应用程序在运行的应用程序中动态加载新编译的类,无需重新启动。
我的 build.sbt 有以下条目:
javaOptions ++=Seq("-javaagent:/path/to/jrebel.jar","-Drebel.log=true","-Drebel.log.file=/path/to/jrebel.log")
fork := true
~compile
)。
关于scala - 如何用akka和sbt开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17258529/
我是一名优秀的程序员,十分优秀!