如何在环项目中运行任意启动功能?

时间:2012-12-20 18:52:53

标签: clojure compojure ring

我有一个compojure / ring应用程序,我目前用lein ring server运行,我想编译成.war,所以我可以部署它。不过,我有一个定义,就像

一样
 (def foo (start-scheduler))

阻止编译和生成.war。为了避免这种情况,我考虑将调用转移到启动函数,但是在服务器启动时如何调用它?

如果我把调用放在处理程序中,我最终会遇到和以前一样的问题。

谢谢!

1 个答案:

答案 0 :(得分:20)

在声明Ring处理程序的project.clj中,您还可以指定应用程序启动时运行的init(和destroy)函数:

:ring {:init myproject.core/init
       :destroy myproject.core/destroy
       :handler myproject.core/handler}

此处记录了这些内容:https://github.com/weavejester/lein-ring#general-options