【发布时间】:2019-04-04 22:27:29
【问题描述】:
首先我必须说,我对 clojure 完全陌生,所以如果我遗漏了一些明显的东西,请原谅我。 我最近在 atom 文本编辑器上安装了 clojure 包,以便创建一些图形,并尝试添加 ubergraph,这是一个使加权图形成为可能的扩展,因为标准 clojure 包不支持这些扩展。
我按照 ubergraphs github https://github.com/Engelberg/ubergraph 上的快速入门指南完成了第一步(将 ubergraph 添加到 leiningen 依赖项)。我下载了 git 存储库,不知道如何从这里继续。运行示例代码
(ns example.core
(:require [ubergraph.core :as uber]))
(def graph1
(uber/graph [:a :b] [:a :c] [:b :d]))
在 github 上描述的 repl 上最终出现以下错误:
CompilerException java.lang.NullPointerException, 编译:(ubergraph/core.clj:11:1)
在 core.clj 中似乎导致错误的行是:
(import-vars
[...])
我跳过了 vars,因为我认为它们不会导致问题。 Clojure 在正确的版本 (1.9.0) 上运行并安装了 java 8。非常感谢您的帮助,在此先感谢。
【问题讨论】:
-
我刚刚安装了库,创建了一个新的命名空间,将上面的代码粘贴到其中,它就可以工作了。它适用于我的 1.9.0 和 1.10.0。尝试运行
lein clean。 -
试过了,没用。仍然返回相同的错误。你能发布你用来创建命名空间的代码吗?另外,我是否必须将库放在特定的地方?我可能在那里做错了什么。谢谢。
-
我也尝试运行它 1.10.0,并得到几乎相同的东西:
(ns example.core (:require [ubergraph.core :as uber])) Unexpected error (NullPointerException) macroexpanding potemkin.namespaces/import-def at (core.clj:11:1) -
Running the example code on the repl- 你用的是哪个命令? -
它在下面描述,试图创建命名空间。
标签: clojure