And*_*sov 5 scala lift sbt xsbt-web-plugin
有一个提升应用程序在Boot.scala中启动ssh守护程序.这是问题:当我container:restart /在sbt会话中运行时,我在使用异常中获得地址.现在有两个问题:
Mar*_*Tye 10
我认为Lift-y的做法是LiftRules.unloadHooks.
它不充分证明(据我所知),但如果你在电梯源代码看,你会发现,当LiftServlet被destroy()编,中定义的功能LiftRules.unloadHooks被执行.
您可以unloadHooks RulesSeq使用appendor prepend方法添加函数,具体取决于您希望它们执行的顺序.因此,在您的bootstrap.liftweb.Boot.boot方法中,您可能会执行以下操作:
sshDaemon.start()
LiftRules.unloadHooks.append( () => sshDaemon.stop() )
Run Code Online (Sandbox Code Playgroud)
(假设您是如何启动并停止SSH守护程序的.)
我不是100%肯定在运行LiftServlet.destroy()sbt web-plugin container:restart命令时调用该方法- 这是由插件及其与Jetty的交互决定的,而不是由Lift决定的 - 但container:stop命令应该绝对可行.