无法使用Clojure> = 1.8从C#项目调用“load-string”

时间:2017-07-10 18:43:13

标签: c# clojure clojureclr

我有一个C#项目,它通过load-string加载并调用自定义Clojure函数。这适用于Clojure 1.7(通过NuGet安装)。但是,如果我升级到最新的预发行版(1.9.0-alpha13),则在调用load-string时会抛出以下异常:

"System.ArgumentException: No matching clause: :clojure.spec/pcat at clojure/spec."

在1.9 REPL中运行完全相同的代码没有问题。

使用最新的稳定版(1.8),我得到以下内容:

"System.TypeInitializationException: The type initializer for 'clojure.clr.api.Clojure' threw an exception. ---> System.TypeInitializationException: The type initializer for 'clojure.lang.RT' threw an exception. ---> System.IO.FileNotFoundException: Could not locate clojure.core.server.cljc.dll or clojure/core/server.cljc on load path."

我对1.8问题的最佳猜测是,ILMerge似乎存在阻止所有DLL被合并的问题。

有关如何解决这些问题的任何想法?我意识到1.9仍然处于alpha状态,所以我并不太关心它,但是无法使用1.8会有点烦人。

0 个答案:

没有答案