相关疑难解决方法(0)

Clojure在本地目录中找不到.clj ,. 和CLASSPATH上的./classes

当我评估(使用'hello)加载hello.clj时,REPL会抱怨以下错误:

java.io.FileNotFoundException: Could not locate hello__init.class or hello.clj on classpath:  (NO_SOURCE_FILE:0)
Run Code Online (Sandbox Code Playgroud)

我正在调用这样的REPL:

java -cp "/Library/Java/Extensions/servlet-api-2.5-20081211.jar:... lots of jarfiles ...:/Library/Java/Extensions/clojure-contrib.jar:/Library/Java/Extensions/clojure-1.0.0.jar:./classes/:." jline.ConsoleRunner clojure.lang.Repl
Run Code Online (Sandbox Code Playgroud)

阅读,看起来这个文件在PWD中找不到,但我补充说.走向没有成功的道路:-(.

在OS X 10.6上运行Java 1.6.

我确定我是个白痴,有人可以用LART打我吗?

编辑:我也尝试了ClojureX发行版,并得到了相同的结果.

macos clojure

14
推荐指数
2
解决办法
6475
查看次数

使用Java Reflection,如何获取指定构造函数args的派生类的类的构造函数?

使用Java反射,可以获得构造函数getConstructor(klass, args).

但是,当我们作为args构造函数签名中指定的类的派生类传递时,它将失败.如何克服这个问题?

例如,

HashSet.class.getConstructor(new Class[]{ HashSet.class });
Run Code Online (Sandbox Code Playgroud)

失败.而

HashSet.class.getConstructor(new Class[]{ Collection.class });
Run Code Online (Sandbox Code Playgroud)

成功.

我正在寻找可以轻松使用的东西clojure.因此,我更喜欢开箱即用,而不必添加用户定义的功能.

任何想法,如何解决这个问题?

java reflection clojure

5
推荐指数
3
解决办法
2133
查看次数

标签 统计

clojure ×2

java ×1

macos ×1

reflection ×1