簡體   English   中英

如何在leiningen repl中預加載clojure文件?

[英]How does one pre-load a clojure file in the leiningen repl?

當我啟動clojure REPL時,我有一些我想預先加載的clojure函數。 除非您在REPL的上下文中使用它們,否則這些函數沒什么用處。

如果它有幫助,我通常使用leiningen為我開始一個clojure REPL。

我怎樣才能告訴clojure(或leiningen,如果它不能通過扁平的clojure獲得)為我預加載包含這些定義的clojure文件?

leiningen示例項目中有幾種方法可以執行此操作,我最喜歡的方法之一就是將您想要的代碼放入默認的repl名稱空間中

/path/to/project/dev/user.clj:

(ns user)
(def foo 42)

並在project.clj文件中添加這樣的行:

(defproject hello "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [[org.clojure/clojure "1.5.1"]]
  :source-paths ["dev"])

這清楚地表明這是針對dev的,同時仍將其加載到默認命名空間中。

當您從nrepl-jack-in運行nrepl-jack-in形式的emacs或“lein repl”時,您應該在加載代碼時遇到user>命名空間:

; nREPL 0.1.6
user> foo
42

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM