reflection - Clojure 列出 leiningen 命名空间

标签 reflection clojure leiningen

Incanter,一个图形/绘图工具,运行良好:

[incanter "1.5.6"] ; in project.clj
; in repl:
(do (use '(incanter core stats charts)) (view (histogram (sample-normal 1000))))

但是我如何以编程方式列出 leiningen-dependency 中的命名空间? all-ns 不起作用:

; comes up empty UNTILL you (use 'incanter.charts):
(filterv #(.contains % "charts") (mapv str (all-ns)))

有办法做到这一点吗?

最佳答案

(all-ns) 仅返回已加载的命名空间(直接或间接,例如通过使用 requireuse)。

要搜索尚未加载的命名空间,您可以使用 tools.namespace和其 clojure.tools.namespace.find 的功能命名空间。

关于reflection - Clojure 列出 leiningen 命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35566406/

相关文章:

c# - 通过反射实现接口(interface)

clojure - 在Clojure中,如何将结合了具有相同键的映射的多个映射合并到列表中?

clojure - Clojars 的补丁库

java - 如何在 Clojure 中实现 Java 接口(interface)

docker - lein 环服务器在 docker 容器内抛出 java.io.FileNotFoundException

ssl - 如何使用 java -Djavax.net.debug=true 选项启动 Leingen?

c# - 从属性名称中检索 "property getter"

algorithm - 为什么人们说 Java 不能有表达式求值器?

angular - 如何获取绑定(bind) [(ngModel)] 的属性名称? Angular 6

Clojure 规范 : how to validate either one or another map