2013-10-21 49 views
3

我裏面加Global.scala一些代碼,並在conole application.conf application.global =全球約Playframework全球

object Global extends WithFilters(new GzipFilter()) with GlobalSettings { 
    override def onStart(app: Application) { 
    Logger.info("Application started.") 
    } 

    override def onStop(app: Application) { 
    Logger.info("Application shutdown...") 
    } 
} 

爲什麼運行3次?

[info] application - Application started. 
[info] application - Application started. 
[info] application - Application started. 
[info] wobo - Application started (Dev) 
[WARN] [10/21/2013 15:54:50.591] [New I/O worker #1] [EventStream(akka://play)]akka.event-handlers] config is deprecated, use [akka.loggers] 
[info] application - Application shutdown... 
[info] application - Application shutdown... 
[info] application - Application shutdown... 

回答

2

OnStart is might called multiple times because you have dependencies to Play plugins that are older than your application Play version.

您可以排除在SBT老遊戲的依賴,例如如何做到這一點在build.sbt或Build.scala類型安全郵件插件:

"com.typesafe" %% "play-plugins-mailer" % "2.2.0" exclude ("org.scala-stm", "scala-stm_2.10.0") exclude("play", "*") 

我認爲這是因爲Play有一個新的Group ID,所以SBT不會將其識別爲同一個庫。