我正在尝试在VimClojure (2.2.0)和Clojure 1.2.0中使用appengine-magic (0.3.1)设置。
通过vanilla REPL (lein repl)使用时,一切看起来都是正确的。
user=> (require '[clojure.contrib.ns-utils :as nsu])
nil
user=> (require '[appengine-magic.core :as ae])
nil
user=> (nsu/ns-vars 'appengine-magic.core)
(appengine-environment-type def-appengine-app
default-war-root in-appengine-interactive-mode? open-resource-stream
start start* stop stop* wrap-war-static)但是当相同的代码从VimClojure发送到钉枪服务器时:
java -cp "`lein classpath`" vimclojure.nailgun.NGServer 127.0.0.1某些函数和宏将消失。
user=> (require '[clojure.contrib.ns-utils :as nsu])
nil
user=> (require '[appengine-magic.core :as ae])
nil
user=> (nsu/ns-vars 'appengine-magic.core)
(appengine-environment-type def-appengine-app
in-appengine-interactive-mode? open-resource-stream)类路径中肯定有相同版本的appengine-magic jar。
那么,是bug还是配置错误呢?
发布于 2010-12-28 23:40:55
在我看来,它更像是一个特性。
查看https://github.com/gcv/appengine-magic/blob/master/src/appengine_magic/core.clj中的最后一个表单。在该名称空间中加载的on完全取决于您运行的是Swank还是普通的REPL。
我不知道为什么会这样,但这显然是appengine-magic的意图所在。
https://stackoverflow.com/questions/4543197
复制相似问题