首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何自动启动jetty/appengine-magic和swank?

如何自动启动jetty/appengine-magic和swank?
EN

Stack Overflow用户
提问于 2011-03-15 18:22:10
回答 1查看 413关注 0票数 2

使用我的Clojure/appengine-magic项目,我现在开始如下所示:

代码语言:javascript
运行
复制
lein repl

(doto 'tlog.core require in-ns)
(compile 'tlog.core)
(ae/start tlog-app)
(require 'swank.swank) (swank.swank/start-repl 4005)

tlog.core具有:

代码语言:javascript
运行
复制
(:require [appengine-magic.core :as ae])

或者,代替ae/start,我认为可以使用:

代码语言:javascript
运行
复制
(use 'ring.adapter.jetty)
(run-jetty (var tlog.core/tlog-app-handler) {:port 8080})

我想把所有这些都放在一个命令后面。

由于名称空间/路径问题,所有通过lein run使用的-main或编写leiningen插件来处理此问题的尝试都失败了。

那么,如何才能做到呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-22 03:02:28

多亏了一个不愿在这里回答的人给出的一个例子,我现在有了一个很好的解决方案。

添加到我的project.clj:

代码语言:javascript
运行
复制
:repl-init-script "src/tlog/init_repl.clj"

将在运行lein repl时触发。

init-repl.clj:

代码语言:javascript
运行
复制
(ns user
  "Init script for Leiningen REPL."
  (:require [appengine-magic.core :as ae])
  (:use [clojure.stacktrace]
        [clojure.contrib.repl-utils :only (show)]
        [tlog.core]))

(defn reload!
  "Force a reload of everything."
  []
  (require 'tlog.core :reload-all))

(compile 'tlog.core)
(ae/serve tlog-app)
(println "Interactive Jetty instance started. To force a reload: (reload!)")

(require 'swank.swank) (swank.swank/start-repl 4005)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5310314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档