Clojure 如何在启动repl时默认加载ns
我正在使用lein2。我想在repl启动时默认加载一些ns。当为该项目执行lein2 repl时,是否可以在project.clj中指定应加载的ns?在 当我启动时Clojure 如何在启动repl时默认加载ns,clojure,leiningen,Clojure,Leiningen,我正在使用lein2。我想在repl启动时默认加载一些ns。当为该项目执行lein2 repl时,是否可以在project.clj中指定应加载的ns?在 当我启动时lein repl $ lein repl nREPL server started on port 1121 REPL-y 0.1.0-beta10 Clojure 1.4.0 Exit: Control+D or (exit) or (quit) Commands: (user/help) Docs: (doc f
lein repl
$ lein repl
nREPL server started on port 1121
REPL-y 0.1.0-beta10
Clojure 1.4.0
Exit: Control+D or (exit) or (quit)
Commands: (user/help)
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
(user/sourcery function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Examples from clojuredocs.org: [clojuredocs or cdoc]
(user/clojuredocs name-here)
(user/clojuredocs "ns-here" "name-here")
#{1 2 3 4 5}
120.0
test.core=>
我有时在
project.clj
中使用:injections
选项
加载名称空间。下面的示例将加载
执行lein2
命令时的foo.bar
命名空间:
(defproject org.example/sample "0.1.0-SNAPSHOT"
:description "A sample project"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:injections [(use 'foo.bar)])
这就是
:repl options{:init expr}
对于hanks@noahz的意义。我希望能够指定fn中的3个语句是我想要执行的,我该如何执行-:repl options{:init(fn[uz](use'ring.util.service)(use'mfaiz.routes)(service mfaiz.routes/my app))}您只是在定义一个函数,因此,添加第二组括号和所需的参数来调用它<代码>((fn[](println)“foo”)这样做了,这是它给我的错误-CompilerException java.lang.RuntimeException:无法解析符号:在此上下文中服务,编译:(无源路径:1)更新了我的答案,证明我提供的解决方案有效。似乎你已经进入了一个新问题。也许可以打开一个新问题并发布更多的项目。clj?谢谢@noahz!感谢你的帮助。我希望有一种方法可以给一个有帮助的答案分配更多的分数!
$ lein repl
nREPL server started on port 1121
REPL-y 0.1.0-beta10
Clojure 1.4.0
Exit: Control+D or (exit) or (quit)
Commands: (user/help)
Docs: (doc function-name-here)
(find-doc "part-of-name-here")
Source: (source function-name-here)
(user/sourcery function-name-here)
Javadoc: (javadoc java-object-or-class-here)
Examples from clojuredocs.org: [clojuredocs or cdoc]
(user/clojuredocs name-here)
(user/clojuredocs "ns-here" "name-here")
#{1 2 3 4 5}
120.0
test.core=>
(defproject org.example/sample "0.1.0-SNAPSHOT"
:description "A sample project"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:injections [(use 'foo.bar)])