1

我正在尝试使用 Clojure Box 将 JACOB 库与 Clojure 一起使用。

我已将此添加到我的 .emacs 中:

(setq swank-clojure-library-paths (list "c:/dev/dlls")) 

C:/dev/dlls/包含jacob-1.14.3-x86.dll.

我在.clojure我的目录中添加了一个目录~/,其中包含 jacob.jar.

在 Clojure Box REPL 中,(System/getProperty "java.class.path")产生:

"c:/Program Files/Clojure Box/clojure/clojure.jar;c:/Program Files/Clojure Box/clojure-contrib/clojure-contrib.jar;;c:/Documents and Settings/mac009/Application Data/.clojure/jacob.jar"

"Settings/mac009/Application Data/.clojure/jacob.jar" 

(System/getProperty "java.library.path")产量:

"c:/dev/dlls" 

如果我启动 Clojure Box 并发出问题(import '(com.jacob.com Dispatch ComThread)),REPL 就会挂起。

现在是奇怪的部分。如果我杀死 REPL 并执行“Alt-X slime”并对“创建一个额外的劣质 lisp?(y 或 n)”回答否并发出“(import '(com.jacob.com Dispatch ComThread))”它可以工作!更奇怪的是,如果我首先发出“(import '(com.jacob.com Dispatch ComThread))”并让REPL挂起,这只会“有效”。如果我只是启动 Clojure Box 并杀死/重新启动 REPL 而没有先发出“(import '(com.jacob.com Dispatch ComThread))”,它就会挂起。

任何帮助是极大的赞赏。

雅各布:http : //sourceforge.net/projects/jacob-project/

Clojure 盒子: http ://clojure.bighugh.com/

4

1 回答 1

1

您还需要将 swank-clojure.jar 复制到 ~/clojure。

  1. 把它放在 ~/.emacs 中:

    (setq swank-clojure-library-paths '("c:\dev\dlls"))

  2. 创建目录 C:\dev\dlls。

  3. 将 Jacob DLL 复制到 C:\dev\dlls。
  4. 创建目录 ~/clojure.
  5. 将 clojure.jar、clojure-contrib.jar 和 swank-clojure.jar 复制到 ~/clojure。
  6. 启动 ClojureBox。

版本:

  • ClojureBox 1.2.0
  • 雅各布-1.15-M4
于 2011-03-27T23:04:54.330 回答