我正在尝试为代码here
编写几个包装函数它基本上具有
的形式(如示例页面中所示)$
我知道要导入内部类,使用(ns the.pain.is.real
(:require [clojure.reflect :as r])
(:import
com.arangodb.velocypack.VPackBuilder ;; fine
com.arangodb.velocypack.VPackSlice ;; fine
com.arangodb.velocypack.VPackParser ;; fine
com.arangodb.velocypack.VPack ;; fine
com.arangodb.velocypack.VPackParser$Builder ;; nope
))
,但以下各项的组合似乎都不起作用。
Unhandled java.lang.ClassNotFoundException
我刚收到(ns winning
(:import com.arangodb.ArangoDB$Builder))
(.build (-> (new ArangoDB$Builder)
(.host "127.0.0.1" 8529)
(.user username)
(.password password)))
。
我曾使用过一些类似的代码:
com/arangodb/velocypack/VPackParser$Builder.class
有什么想法吗?
查看jar文件确实显示
{{1}}
这只是反复试验吗?
答案 0 :(得分:2)
回答我自己的问题。
使用lein deps
时似乎下载了两个版本。即使项目文件中只有[com.arangodb/velocypack "1.0.0"]
,1.0.0
和1.0.10
都位于.m2
目录中。课程com/arangodb/velocypack/VPackParser$Builder.class
只能在版本1.0.10
中找到。
将项目文件更改为[com.arangodb/velocypack "1.0.10"]
后,导入将起作用。