当从C#执行时
RT.load( "my.util", true );
在包含 my\util.clj 的目录中,CLOJURE_LOAD_PATH 上,我得到:
System.IO.FileNotFoundException: 无法定位 my.util.clj.dll 或我的.util.clj 在加载路径上。
我认为后者是错误的 - 它应该在加载路径上查找 my\util.clj?
此外,还存在着一个问题,即命名空间中包含-的编译程序集存在问题。例如,如果我有编译的命名空间 myns.foo-bar (在文件 myns\foo_bar.clj 中),它产生 myns.foo_bar.clj.dll。如果试着像这样加载它:
RT.load( "myns.foo-bar", true );
System.IO.FileNotFoundException: 无法定位 myns.foo-bar.clj.dll 或 myns.foo-bar.clj 在加载路径上。
我认为 RT.load 应“知道”编译包含-字符的命名空间映射到相应的 dll 或源文件名中的 _。