2009-05-19 85 views
1

我想用Clojure使用Clojure盒使用JACOB庫。奇怪的Clojure盒 - 庫(dll)問題

我已經加入這個我的.emacs:

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

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

我添加了一個.clojure DIR我~/目錄和包含 jacob.jar

在Clojure的盒子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的方塊和問題(import '(com.jacob.com Dispatch ComThread)),在REPL只是掛起。

現在是奇怪的部分。如果我殺了REPL並執行「Alt-X slime」並且 回答否「創建另一個下級lisp?(y或n)」和 問題「(import'(com.jacob.com Dispatch ComThread) )「 有用!即使 weirder是,如果我第一次問題「(進口 '(com.jacob.com Dispatch ComThread))」,這只是「工程」,並使REPL掛起。如果我 只是啓動Clojure Box並殺死/重新啓動REPL,而不首先發行 「(import'(com.jacob.com Dispatch ComThread))」,它只是掛起。

任何幫助是極大的讚賞。

JACOB: http://sourceforge.net/projects/jacob-project/

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

回答

1

您還需要斯旺克,clojure.jar複製到〜/ Clojure的。

  1. 將這個在〜/的.emacs:

    (setq斯旺克-Clojure的庫路徑「( 「C:\ dev的\的DLL」))

  2. 創建目錄C: \ dev的\ dll文件。

  3. 將Jacob DLL複製到C:\ dev \ dlls。
  4. 創建目錄〜/ clojure。
  5. 將clojure.jar,clojure-contrib.jar和swank-clojure.jar複製到〜/ clojure。
  6. 開始ClojureBox。

版本:

  • ClojureBox 1.2。0
  • jacob-1.15-M4