【问题标题】:Default namespace is not evaluated when stating lein repl?声明 lein repl? 时不评估默认命名空间?
【发布时间】:2015-01-20 21:31:23
【问题描述】:

当我启动 lein repl :headless from emacs cider 时,我无法调用我的默认命名空间。

我的 project.clj 定义了 :repl 条目:

  :repl-options { :init-ns dev.core }

当我从 project.clj 文件中提取苹果酒时,我确实最终进入了 dev.core ns:

  dev.core> *ns*
  #<Namespace dev.core>

但是,当我看实习生时,我得到:

  dev.core> (ns-interns *ns*)
  {}

当我重新加载命名空间时:

  dev.core> (use 'dev.core :reload)
  nil
  dev.core> (ns-interns *ns*)
  {start-cljs-repl #'dev.core/start-cljs-repl, stop-server #'dev.core/stop-server}

我的命名空间被加载。 leiningen 内部似乎使用 (require ...) 方法加载命名空间,但在文档中找不到有关此案例的任何信息?

谢谢!

【问题讨论】:

    标签: clojure leiningen cider


    【解决方案1】:

    设置初始命名空间后,使用:init 加载符号。

    :repl-options {:init-ns dev.core
                   :init (use 'dev.core :reload)}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多