Welcome! Please see the About page for a little more info on how this works.

0 votes
in ClojureCLR by

I received the following error when trying to start ClojureCLR through Mono.

Release 4.0 general$ mono Clojure.Main.exe

Unhandled Exception:
System.TypeInitializationException: An exception was thrown by the type initializer for Clojure.CljMain ---> System.TypeInitializationException: An exception was thrown by the type initializer for clojure.lang.RT ---> System.IO.FileNotFoundException: Could not locate clojure.core.clj.dll or clojure/core.clj on load path.
at clojure.lang.RT.load (System.String relativePath, Boolean failIfNotFound) (link: 0x00000) in :0
at clojure.lang.RT.load (System.String relativePath) (link: 0x00000) in :0
at clojure.lang.RT.DoInit () (link: 0x00000) in :0
at clojure.lang.RT..cctor () (link: 0x00000) in :0
--- End of inner exception stack trace ---
at Clojure.CljMain..cctor () (link: 0x00000) in :0
--- End of inner exception stack trace ---
(link: ERROR) FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for Clojure.CljMain ---> System.TypeInitializationException: An exception was thrown by the type initializer for clojure.lang.RT ---> System.IO.FileNotFoundException: Could not locate clojure.core.clj.dll or clojure/core.clj on load path.
at clojure.lang.RT.load (System.String relativePath, Boolean failIfNotFound) (link: 0x00000) in :0
at clojure.lang.RT.load (System.String relativePath) (link: 0x00000) in :0
at clojure.lang.RT.DoInit () (link: 0x00000) in :0
at clojure.lang.RT..cctor () (link: 0x00000) in :0
--- End of inner exception stack trace ---
at Clojure.CljMain..cctor () (link: 0x00000) in :0
--- End of inner exception stack trace ---

3 Answers

0 votes
by

Comment made by: danjacka

I hit the same error on Mono on Ubuntu. In my case creating softlinks to {{Clojure.dll}} named {{clojure.core.clj.dll}}, etc. (full list (link: http://charsequence.blogspot.com/2014/09/running-clojureclr-16-on-ubuntu-1404.html text: here)) worked - afterwards I was able to fire up a REPL. Hope this helps.

0 votes
by

Comment made by: dmiller

Good for short-term workaround.
We need to figure out why assembly resolution differs on Mono. The ILMerge'd Clojure.dll contains the embedded dlls, as you've figured out. Why they aren't picked up directly, I don't know.
Need some debugging time under Mono.

0 votes
by
Reference: https://clojure.atlassian.net/browse/CLJCLR-48 (reported by alex+import)
...